【发布时间】:2011-12-25 16:37:08
【问题描述】:
当使用字符串作为数组的键时,console 显示没有这些声明值的数组,并且在通过该值进行迭代时,键是字符串的情况不会显示? ,虽然我可以得到它们的价值。
>> var arr = [ 0, 1, 2, 3 ];
undefined
>> arr["something"] = "aught";
"aught"
>> arr
[0, 1, 2, 3]
>> arr["something"]
"aught"
>> for( var i = arr.length; i--; console.log( arr[ i ] ) );
3
2
1
0
我知道数组是在 JavaScript 引擎中实现了某种“枚举”接口的对象。
最有趣的是解释器没有抛出警告或错误,所以我花了一些时间寻找可能丢失数据的位置。
【问题讨论】:
标签: javascript arrays