1觉增,for循環(huán)
for(var i=0;i<10;i++){
console.log(i)
if(i==3){
break;
}
}
輸出結果為0 1 2 3
此處用break可跳出for循環(huán)兵拢,如果for循環(huán)外層是一個函數(shù)體并且之后無任何操作也可用reatun阻止循環(huán)
2,forEach
let list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
try{
list.forEach(item=>{
console.log(item)
if(item===3){
throw new Error("finish")
}
})
}catch(e){
if(e.message!=="finish"){
console.log(e.message)
}
}
輸出結果為0 1 2 3
如果直接使用forEach無論如何是不能跳出循環(huán)的抑片,需要借助try catch拋出錯誤來阻止循環(huán)
3卵佛、some
let list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
list.some(item=>{
console.log(item)
if(item===3){
return true
}
})
輸出結果為0 1 2 3
es6中的some也可實現(xiàn)此功能杨赤。some循環(huán)中只要有一個符合條件則會跳出循環(huán)體
4敞斋,every
let list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
list.every(item=>{
console.log(item)
if(item===3){
return false
}else{
return true
}
})
輸出結果為0 1 2 3
es6中的every。every只有全部是真返回的值才會是真疾牲,只要有一個調價為假則會跳出循環(huán)植捎,需要注意every循環(huán)中只有 return true才會繼續(xù)循環(huán),否則則會阻止循環(huán)