学科分类
目录
JavaScript网页编程

修改数组长度

使用“数组名.length”可以获取或修改数组的长度。数组长度的计算方式为数组中元素的最大索引值加1,示例代码如下。

var arr = ['a', 'b', 'c'];

console.log(arr.length);    // 输出结果:3

在上述代码中,数组中最后一个元素是c,该元素的索引为2,因此数组长度为3。

使用arr.length不仅可以获取数组长度,还可以修改数组长度,示例代码如下。

var arr1 = [1, 2];

arr1.length = 4;     // 大于原有长度

console.log(arr1);    // 输出结果:(4) [1, 2, empty × 2]

var arr2 = [1, 2, 3, 4];

arr2.length = 2;     // 小于原有长度 

console.log(arr2);    // 输出结果:(2) [1, 2]

在console.log()的输出结果中,前面的“(4)”表示数组的长度为4,后面显示的是数组中的元素,empty表示空元素。若length的值大于数组中原来的元素个数,则缺少的元素会占用索引位置,成为空元素;若length的值小于数组中原来的元素个数,多余的数组元素将会被舍弃。

当访问空元素时,返回结果为undefined,示例代码如下。

var arr = [1];

arr.length = 4;      // 修改数组的长度为4

console.log(arr);     // 输出结果:(4) [1, empty × 3]

console.log(arr[1]); // 输出结果:undefined

除了上述情况外,还有如下3种常见的情况也会出现空元素。

// 情况1:在使用字面量创建数组时出现空元素

var arr = [1, 2, , 4];

console.log(arr);    // 输出结果:(4) [1, 2, empty, 4]

// 情况2:在new Array()中传入数组长度的参数

var arr = new Array(4);

console.log(arr);    // 输出结果:(4) [empty × 4]

// 情况3:为数组添加索引不连续的元素

var arr = [1];

arr[3] = 4;       // 向数组中添加一个元素,索引为3

console.log(arr);    // 输出结果:(4) [1, empty × 2, 4]
点击此处
隐藏目录