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

  1. 数组的forEach办法,也能够用来遍历数组

    应用delete命令删除一个数组成员,会造成空位,并且不会影响length属性。

    var a = [1, 2, 3];delete a[1];a[1] // undefineda.length // 3

数组的slice办法能够将“相似数组的对象”变成真正的数组。