js中终止forEach循环的方法

正常终止for循环我们可以使用break关键字来实现,而在forEach循环中是不能使用break和continue这两个关键字的,为什么呢?
因为这两个关键字要在循环中使用,而forEach中所执行的是callback,callback是个函数所以不能使用。

那在forEach中应该怎么样终止循环呢?使用return?
使用 return 的话,只能跳出本次循环执行下一次循环,并不会终止forEach循环。

可以使用 抛出错误 的方式来真正的终止forEach循环:

let arr = [1,2,3]

try{
    
    
    arr.forEach(item => {
    
    
        if(item == 2){
    
    
            throw Error()
        }
    })
}catch(err){
    
    
    if(err.message === 'End Loop') throw err //抛出真正的错误
}

猜你喜欢

转载自blog.csdn.net/jiangjunyuan168/article/details/126902805
今日推荐