根據for each...in loop的MDN頁面,此構造已棄用。有沒有可以做同樣的事情的替代方案? for...of loop不會遍歷非整數(自己可枚舉)的屬性。如果沒有其他選擇,那麼爲什麼他們不贊成呢?替代「for each」循環的JavaScript
回答
是有一個替代方案完全相同的事情?
A for ... in
循環中,您在代碼塊中首先執行的操作是將foo[propertyname]
複製到變量中。
是的,我想只有這種解決方法,這不是真的替代「每個」的語言。所以他們不應該棄用它,對吧? – user1537366
據我記得這隻適用於webkit? – Benedictus
@Benedictus - 不在JavaScript 1.0中。 Netscape 2支持它! – Quentin
遍歷對象obj
的所有屬性,你可以這樣做:如果你想避免繼承屬性
for (var key in obj) {
console.log(key, obj[key]);
}
,你可以這樣做:
for (var key in obj) {
if (!obj.hasOwnProperty(key)) continue;
console.log(key, obj[key]);
}
你可以利用的新的ECMAScript第五版功能:
Object.keys(obj).forEach(function (key) {
console.log(key, obj[key]);
});
^這是我使用'forinstatement'時如何解決eslint中的'no-restricted-syntax'錯誤。 – pherris
- 1. JavaScript for each循環
- 2. JavaScript for(-each)循環
- 3. PHP for each循環
- 4. for-each循環NullPointerException
- 5. setTimeout for for each循環
- 6. For循環的SQL替代
- 7. XSL的for-each循環
- 8. 的for-each在XSLT循環
- 9. VB.NET中的循環(FOR EACH)
- 10. for-each循環迭代是向後
- 11. For循環代替while循環
- 12. 替代嵌套for循環
- 13. For-each循環變量
- 14. XSLT和for-each循環
- 15. for each循環檢查| AngularJS
- 16. PHP嵌套for-each循環
- 17. 角for each循環行爲
- 18. jquery $ .each()for循環轉換
- 19. xsl-fo for-each循環
- 20. for-each循環索引
- 21. For Each ...循環不工作
- 22. localStorage each和for循環
- 23. for-each循環錯誤
- 24. 處理for-each循環
- 25. 使用_.each()函數代替循環的JavaScript
- 26. 的JavaScript的for-each/for-in循環改變元件類型
- 27. for循環for循環? - Javascript
- 28. for each而不是for循環
- 29. 當XSL-varible當在for-each循環使用XSL-varible for-each循環
- 30. 什麼是用於過濾的For-Each循環的替換?
好點[這裏做(http://stackoverflow.com/questions/242841/javascript-for-in-vs -for) – noel