【js学习笔记040】-- 稀疏数组

来源:互联网 发布:资产配置贡献率算法 编辑:程序博客网 时间:2024/06/06 01:16

 就是包含从0开始的不连续索引的数组。

a  =new Array(5) //没有元素,但length=5

a[1000] = 0; //赋值添加一个元素,但是设置length为1001。

可以使用in操作符检测两者之间的区别:

 var   a1 = [,,,]; //数组是[undefined, undefined, undefined]

 var   a2 = new Array(3); //该数组没有元素

0 in a1 ; //=>true

0 in a2; //=>false

注意:当省略数组直接直接量中的值时(使用连续的逗号如[1,,3]),这时得到的数组也是稀疏数组。省略掉的值是不存在的。如果你确实碰到了稀疏数组,你的代码很可能像对待非稀疏数组一样来对待它们,只不过它们包含一些undefined值。

原创粉丝点击