Js之跳出循環(for/forEach)


1.for方法跳出循環

使用break跳出循環

 1 function getItemById(arr, id) {
 2     var item = null;
 3     for (var i = 0; i < arr.length; i++) {
 4         if (arr[i].id == id) {
 5             item = arr[i];
 6             break;
 7         }
 8     }
 9     return item;
10 }

2.forEach方法跳出循環

用拋異常的方式,終止forEach循環。

 1 function getItemById(arr, id) {
 2     var item = null;
 3     try {
 4         arr.forEach(function(curItem, i) {
 5             if (curItem.id == id) {
 6                 item = curItem;
 7                 throw Error();
 8             }
 9         })
10     } catch(e) {}
11     return item;
12 }

注:

  • forEach()與普通的for循環不同,不能使用break和continue這兩個關鍵字;實現continue效果可以使用return。
  • forEach()本身無法跳出循環,所以,這里使用了拋異常的方法來終止它。
  • forEach()內執行的方法為回調函數,里面形成了作用域,不會像for一樣影響全局變量。
  • forEach()與map、filter、reduce這些高階函數一脈相承,讓我們更易用。

參考網址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM