在forEach中,不能使用 continue 和 break ,能夠使用 return 或 return false 跳出循環,效果與 for 中 continue 同樣。注意該方法沒法一次結束全部循環。code
forEach 跳出本次循環,使用returnit
[1,2,3,4,5].forEach(function(item,index){ if(item == 3){ return } console.log(3)// item == 3時,執行不到該部分,結束本次循環 })
forEach 跳出整個循環,須要拋出異常io
try { [1,2,3,4,5].forEach(function(item,index){ if(item == 3){ thorw new Error(); //結束總體循環 } }) } catch(e) { }
forEach 跳出嵌套循環console
try { ["a","b","c"].forEach(function(item,index){ try { [1,2,3,4,5].forEach(function(item,index){ if(item == 3){ thorw new Error(); //結束總體循環 } }) } finally{}//try不能單獨存在 <!--catch(e) {--> //內層的catch不能存在,否則會捕獲異常,只結束內層forEach <!--}--> }) } catch(e) { //在最外層捕獲異常,可結束嵌套循環 }