可能的重复:
带有数组的 JavaScript “For ...in”
我使用 for-in 迭代遍历了各种数组,结果各不相同:
var my_array1 = {"foo":2, "bar":3};
var my_array2 = new Array(
'foo',
'bar'
);
var my_array3 = ["foo","bar"];
for (var key in my_array1){
alert(key); // outputs key
}
for (var key in my_array2){
alert(key); // outputs index integer not value
}
for (var key in my_array3){
alert(key); // outputs index integer not value
}
非关联数组上的 for-in 迭代是否有理由只给出索引而不是像 python 中的实际值?
对于非关联数组,使用 for(var index in my_array) 是否比使用 for(var index=0; index<my_array.length; index++) 有优势?