forEach方法設計爲僅用於javascript中的數組嗎?任何人都可以共享想法或示例,以瞭解可以使用forEach()方法完成哪些主要任務,或者僅用於獲取元素值和索引?在javascript中使用forEach方法
回答
號
它被設計爲在陣列工作,但可以在任何類似數組的對象進行操作(雖然你仍然有從那裏某處存在訪問)。
例如,在一個節點列表:
Array.prototype.forEach.call(
document.getElementsByTagName('div'),
function (divElement) { console.log(divElement); }
);
嘗試''abc「.forEach(function(v){console .LOG(v)})'。你必須使用應用程序或呼叫。 –
@Quentin不適用於類似數組的對象 –
@dystroy - 是的,您必須使用apply或call。這並不意味着你不能使用它。 – Quentin
它是一個數組函數。見documentation
您可以使用任何類似數組的對象,而是因爲你必須使用apply
或call
它不是很方便。例如:
[].forEach.call("abc",function(v){console.log(v)})
遍歷對象鍵,你應該使用for..in:
for (key in object) {
var value = object[key];
}
需要注意的是jQuery的兼容性功能$.each使兩個數組和非數組對象,但你一般都知道同樣的迭代函數如果你正在處理一個數組(或者你應該),所以我只會用它來與舊的瀏覽器兼容。
只爲良好的閱讀! http://stackoverflow.com/questions/500504/why-is-using-for-in-with-array-iteration-such-a-bad-idea –
- 1. Javascript forEach方法正在爲NodeList工作
- 2. 無法在foreach循環中使用類方法 - php
- 3. 使用forEach方法更改項目的屬性(javascript)
- 4. 使用方法在JavaScript
- 5. JavaScript:方法forEach不支持從Internet Explorer
- 6. Javascript - TypeError:Object [object Object]沒有方法'forEach'
- 7. 如何在foreout中使用foreach中的計算方法knockout.js
- 8. 在javascript中使用post方法
- 9. 在Replace()方法中使用變量 - Javascript
- 10. 在Javascript中使用C#方法
- 11. 在CSS javascript方法中使用變量
- 12. 在JavaScript中使用indexOf()方法
- 13. Foreach:剃刀用Javascript方法在tbody裏面
- 14. 使用forEach方法修改dom元素
- 15. C# - 使用foreach循環方法參數
- 16. 更有效的使用foreach的方法?
- 17. 在asp.net中使用Javascript方法調用Codebehind .cs文件方法
- 18. 在Javascript中使用子方法調用父方法。
- 19. Javascript方法使用
- 20. Javascript方法使用
- 21. 使用foreach語句在PHP中打印MySQL行的方法?
- 22. 異步方法用foreach
- 23. JavaScript使用返回forEach
- 24. 調用方法的foreach在ListView
- 25. Javascript:在對象實例方法中使用apply()方法失敗
- 26. 在nightmarejs中是否有foreach方法?
- 27. 在foreach方法中更新數組Angular
- 28. foreach無法在foreach中使用`i`(i = 1:N)
- 29. 使用Foreach循環中的Javascript Laravel 5.3
- 30. 如何在foreach數組中使用foreach?
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/forEach - 將是你最好的開始 –