在chrome浏览器做的测试如下所示:
为什么会出现红圈1和红圈2处的两个差异,这两个数组的值不都是undefined么?
[,,,] 表示只有3个长度的空数组,跟new Array(3)效果是一样的。
[undefined, undefined, undefined] 表示一个有3个undefined的数组。
至于这个"in" ... 是用来检验属性是否存在的,数组也是对象[滑稽]。
a1 是个空数组 也没有0这个”属性“。
a2 下标0的地方放了一个 undefined 。
还是有个地方不太理解,a1[,,,]声明的数组浏览器console输出的是[undefined * 3]不也是说明是由三个undefined的数组么,为什么是空数组呢
@雨帘轻挂: 是一个有3个长度的空数组。里面没有任何元素。你建了一个3个长度的数组,里面不放东西。你让chrome怎么显示出来合适呢。
@长蘑菇星人: 感谢,明白了,感觉好对不起chrome T_T