本帖最后由 大山哥哥 于 2016-12-30 14:06 编辑
javaScript中的数组访问及长度问题
在学习java基础的过程中大家必不可少的要学习java中的数组.那么咱们都知道在java中数组是不可变的.以至于大家形成了一个固定的思维模式.只要听到数组就认为是不可变的.当然在咱们学习javaScript时在javaScript中也有数组.那么javaScript中的数组是怎么样的呢?
要学习javaSrcipt中的数组首先咱们要明确两点:
1.在javaSrcipt中数组是一种有序元素的集合.
2.在javaSrcipt中数组的长度是可变的.只要将元素加入到数组的尾部,数组的长度就会自动增长.可以自由改写数组中的每一个元素.
ok 那么接下来咱们就具体的学习一下javaSrcipt中的数组.
1.在javaSrcipt中数组的创建.
两种方式:
第一种:var arr = new Array();
第二种:var arr = [];
不含有元素的数组长度为零.在java中数组的类型必须一致而在javaSrcipt中则是有着高自由度.也就是说 在java中的数组类型必须要一致而在javaScript中这可以不用一致.
2.数组的元素访问.
2.1 在javaScript中可以通过括号运算符([]运算符)来访问数组.[]中写的是角标的数值.角标由0开始,如果该角标不存在则获得undefined值
如:
[JavaScript] 纯文本查看 复制代码
var arr =[3,4,5]
print(arr[0],arr[1],arr[2],arr[3],)
3 4 5 undefined;
2.2 如果将中括号写在赋值表达式的左侧,怎可以用来计算,或者是改写相应的元素.
//接上面代码
如:
[JavaScript] 纯文本查看 复制代码
arr[2] = arr[2] *2 ; // 改写下标为2的元素
10
print(arr);
3,4,10
2.3 如果赋值表达式左侧所写的下标超出了元素数量.则会向数组中增加新的元素,新增的元素下标值不必紧接着现有元素的个数.可以跳过元素.当跳过元素被访问是则或返回undefined.
//接上面代码
如:[JavaScript] 纯文本查看 复制代码
arr[3] = 20; // 元素数量为3的时候,如果赋值给下标为3的元素(第四个元素),就会新增一个元素.
print(arr)
3,4,10,20
arr[10] =100; // 如果对下标为10(第11个元素)进行赋值,元素的数量就会变成11.
100
print(arr)
3,4,10,20,,,,,,,100
print(arr.length) // length获取数组的长度
print(arr[4]) // 如果访问被跳过的元素,怎返回undefined
undefined
3 数组的长度
3.1 获取数组的长度
如:[JavaScript] 纯文本查看 复制代码
var arr = [2,,,,3]; //元素间有空隙额数组(元素数量为2)
print(arr.length); // 与元素的数量不同,数组的长度为5
5
3.2数组length值的自动计算.
[JavaScript] 纯文本查看 复制代码
var arr = ['zero','one','two'];
arr[arr.length] = 'three'; //借助arr.length 向数组末尾添加元素是一种习惯用法.
print(arr)
zero one two three
print(arr.length) //自动增长
4
arr[100] = 'x'; // 添加元素时跳过了一些中间元素
print(arr.length) //自动增长
101
3.2 更改数组的长度
[JavaScript] 纯文本查看 复制代码
var arr = ['zero','one','two'];
arr.length = 2; //将数组的长度缩短
print(arr)
zero,one
arr.length = 3 // 恢复(加长)数组至原来的长度
print(arr) // 恢复的部分是undefined值
type of arr[2]
undefined
|
|