forEach跳出、终止循环
1、forEach跳出本次循环可使用return语句跳出本次循环,执行下一次循环var arr = [1,2,3,4,5,6]arr.forEach((item) => {if (item === 3) {return}console.log(item)})将输出 1 2 4 5 6,3不会输出2、forEach终止循环forEach无法通过正常流程(如break)终止循环,但可通过抛出异常
·
1、forEach跳出本次循环
可使用return语句跳出本次循环,执行下一次循环
var arr = [1,2,3,4,5,6]
arr.forEach((item) => {
if (item === 3) {
return
}
console.log(item)
})
将输出 1 2 4 5 6,3不会输出
2、forEach终止循环
forEach无法通过正常流程(如break)终止循环,但可通过抛出异常的方式实现终止循环
var arr = [1,2,3,4,5,6]
try{
arr.forEach((item) => {
if (item === 3) {
throw new Error('End Loop')
}
console.log(item)
})
} catch (e) {
if(e.message === 'End Loop') throw e
}
将只输出 1 2
注意:在catch语句块中加了if(e.message === 'End Loop') throw e这句代码会在控制台报一个错误,这个错误是try语句块中抛出的
如果不想看到这个报错,将if(e.message === 'End Loop') throw e这一句删除就行
3、结束for循环,使用break或return false;
for(var i=0;i<=this.addParams.length;i++){
if(!this.addParams[i].userName) return layer.msg("请输入第"+Number(i+1)+"行的用户名
称!");
};
4、终止jq的each循环使用 return false;
更多推荐
已为社区贡献1条内容
所有评论(0)