forEach
相比拟for,for..in,for..of
循环,毛病就是不能continue 和break
,然而能够通过其余形式实现
continue
实现形式:return
[1,2,3,4,5].forEach(function(item,index){ if(item == 3){ return } console.log(3)// item == 3时,执行不到该局部,完结本次循环 })
break
实现形式:throw new Error()
配合try..catch
try { [1,2,3,4,5].forEach(function(item,index){ if(item == 3){ thorw new Error(); //完结整体循环 } })} catch(e) {}
多层循环
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) { //在最外层捕捉异样,可完结嵌套循环}