js中陣列遍歷的幾種方法及其區別
阿新 • • 發佈:2018-11-12
第一種最常用的:for迴圈
for(j = 0; j < arr.length; j++) { }
優化版for迴圈
for(j = 0,len=arr.length; j < len; j++) { }
對於陣列較大時,優化比較明顯;
第二種:foreach
arr.forEach(function(e){ });
第三種:for ……in
var arr = new Array("first", "second", "third") for(var item in arr) { document.write(arr[item]+","); }
for……in 的效率比較低
第四種:map 遍歷
arr.map(function(n){ });
第五種:for……of 遍歷(需要ES6支援)
for(let value of arr) { });
for、map是比較常用的兩種方法,效能也還行。
關於跳出迴圈的幾種方式:
- return ==》結束迴圈並中斷函式執行;
- break ==》結束迴圈函式繼續執行;
- continue ==》跳過本次迴圈;
- for 迴圈中的變數 i,由於 ES5並沒有塊級作用域的存在,它在迴圈結束以後仍然存在於記憶體中,所以建議使用函式自執行的方式來避免;