js获取数组长度-length属性的介绍

js获取数组长度-length属性的介绍

length属性

在 js 中获取数组长度非常简单,每个数组都有一个 length 属性,
该属性返回数组的最大长度,即其值等于最大下标值加 1。
由于数字下标必须小于 2^32-1,所以 length 属性最大值等于 2^32-1。

length 属性不能体现数组元素的实际个数

下面代码定义了一个空数组,然后为下标等于 100 的元素赋值,则 length 属性返回 101。因此,length 属性不能体现数组元素的实际个数。

var a = [];  //声明空数组
a[100] = 2;
console.log(a.length);  //返回101

length 属性可读可写,是一个动态属性。length 属性值也会随数组元素的变化而自动更新。同时,如果重置 length 属性值,也将影响数组的元素,具体说明如下:

  1. 如果 length 属性被设置了一个比当前 length 值小的值,则数组会被截断,新长度之外的元素值都会丢失。 如果 length
  2. 属性被设置了一个比当前 length 值大的值,那么空数组就会被添加到数组末尾,使得数组增长到新指定的长度,读取值都为
    undefined。

length 属性值动态变化对数组的影响

下面代码演示了 length 属性值动态变化对数组的影响。

var a = [1,2,3];  //声明数组直接量
a.length = 5;  //增长数组长度
console.log(a[4]);  //返回undefined,说明该元素还没有被赋值
a.length = 2;  //缩短数组长度
console.log(a[2]);  //返回undefined,说明该元素的值已经丢失
    原文作者:徊忆羽菲
    原文地址: https://blog.csdn.net/guo_qiangqiang/article/details/107839263
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞