1.数组的实质
实质上,数组属于一种非凡的对象。typeof
运算符会返回数组的类型是object
。
typeof [1, 2, 3] // "object"
var arr = ['a', 'b', 'c'];Object.keys(arr)// ["0", "1", "2"]
下面代码中,Object.keys
办法返回数组的所有键名。能够看到数组的键名就是整数0、1、2。
因为数组成员
2.length 属性
数组的length
属性,返回数组的成员数量。
['a', 'b', 'c'].length // 3
length
属性是可写的。如果人为设置一个小于以后成员个数的值,该数组的成员数量会主动缩小到length
设置的值。
var arr = [ 'a', 'b', 'c' ];arr.length // 3arr.length = 2;arr // ["a", "b"]
清空数组的一个无效办法,就是将length
属性设为0。
var arr = [ 'a', 'b', 'c' ];arr.length = 0;arr // []
当length
属性设为大于数组个数时,读取新增的地位都会返回undefined
。
数组的
forEach
办法,也能够用来遍历数组应用
delete
命令删除一个数组成员,会造成空位,并且不会影响length
属性。var a = [1, 2, 3];delete a[1];a[1] // undefineda.length // 3
数组的slice
办法能够将“相似数组的对象”变成真正的数组。