1
A
回答
1
想想JavaScript數組作爲一個正常的對象名爲length
一個特殊屬性的(實際上,它更復雜一點)。所以for..in循環的行爲是作爲其他對象相同:
var a = new Array();
a[1] = "a";
alert(a.length); // 2
alert(a[0]); // undefined
a[1000] = "b"
alert(a.length); // 1001
a[-1] = "c";
alert(a[-1]); // c
a.abc="why not";
for(var key in a)
{
alert(key+"="+a[key]);
}
// 1=a
// 1000=b
// -1=c
// abc=why not
還要注意的是,你可以有你的陣列中的差距,而不必支付內存價格。
10
這是設計。當你知道密鑰的時候,在數組中獲得一個值是很簡單的,但是如果給定一個值的話,獲得密鑰要困難得多。值可以重複,那麼你怎麼知道應該使用哪個鍵?但是一把鑰匙的獨特之處在於,只有一個鑰匙才能獲得。所以,for循環將迭代關鍵字,並且獲取關聯值很簡單。
0
有一個for each...in循環,完全是 - 只枚舉值。即將推出到您附近的瀏覽器。
for each(var a in Values) {
..
}
對於陣列來說,有一個新功能forEach可以達到同樣的效果。
someArray.forEach(function(value) {
..
});
相關問題
- 1. JavaScript的for循環有關的問題
- 2. Javascript jquery for循環問題
- 3. Javascript和for循環問題
- 4. JavaScript的for循環的問題,我有
- 5. for循環問題
- 6. System.Threading.Tasks for for循環問題
- 7. For循環問題
- 8. 問題在JavaScript中的for循環
- 9. JavaScript(jQuery)的for循環問題
- 10. $ getJSON和for循環問題
- 11. for循環for循環? - Javascript
- 12. For循環的問題
- 13. JavaScript for循環增量> 1問題
- 14. JavaScript for ..在循環IE問題
- 15. JavaScript for循環和setTimeout問題
- 16. JavaScript,嵌套for循環問題
- 17. 批次for循環問題
- 18. 關於for循環(模板循環)
- 19. for循環的問題
- 20. bash的for循環問題
- 21. for循環的問題
- 22. for循環的問題
- 23. 關於fortran在for循環中繼續聲明的問題
- 24. 關於嵌套for循環
- 25. For循環條件問題
- 26. C#} For循環問題
- 27. 初級for循環問題
- 28. C++ For循環問題
- 29. For循環索引問題
- 30. FOR循環Netezza問題
對於op:如果對象是數組,則「Keys」可與索引(0..n)互換。 – 2010-09-02 02:23:14
@Daniel:排序。如果向數組或屬性Array.prototype添加屬性,它們也將包含在循環中。 – 2010-09-02 03:22:57
謝謝馬修,現在我明白了設計。 – 2010-09-02 03:39:47