在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) { //在最外层捕获异常,可结束嵌套循环 }