猿问
为什么for-in访问不到空数组的数组元素?
我想给数组赋值,但是为什么for-in访问不到空数组的数组元素?
var arr=new Array(2);for(var i in arr){ arr[i]=10; }
叮当猫咪
浏览 409
回答 1
1回答
不负相思意
for-in 语句 可以遍历对象 自身的可枚举属性 和其 原型链上的可枚举属性。这里得了解对象的属性描述符。。。通过 Array(num) 生成的数组项(稀疏数组项),没有初始化生成属性描述符,就自然无法遍历。var arr = new Array(2);Object.getOwnPropertyDescriptor(arr, '0'); // undefinedObject.getOwnPropertyDescriptor(arr, 'length')// {value: 2, writable: true, enumerable: false, configurable: false}
0
0
0
随时随地看视频
慕课网APP
相关分类
JavaScript
我要回答