js for和forEach 跳出循环 替代方案

1 for循环跳出

javascript 复制代码
for(let i=0;i<10;i++){
    if(i===5){
        break;
    }
    console.log(i)
}

在函数中也可以return跳出循环

javascript 复制代码
function fn(){
  for(let i=0;i<10;i++){
    if(i===5){
        return;
    }
    console.log(i)
  }
}
fn()

for ... of效果同上

2 forEach循环跳出

break会报错

javascript 复制代码
[1,2,3,4,5,6,7,8,9,10].forEach(i=>{
    if(i===5){
        break;
    }
    console.log(i)
})

return不能跳出forEach循环

javascript 复制代码
[1,2,3,4,5,6,7,8,9,10].forEach(i=>{
    if(i===5){
        return;
    }
    console.log(i)
})

try...catch可以跳出循环

javascript 复制代码
try{
    [1,2,3,4,5,6,7,8,9,10].forEach(i=>{
        if(i===5){
            throw new Error('跳出循环');
        }
        console.log(i)
})}catch(e){
    console.log(e)
}

3 替代方案

一些情况下,可以使用some,find,every去代替foreach退出循环

  • some 只要有一项为true,跳出循环。
  • every 只有每一项都返回true,函数返回true ,所以只要有一项不是true就会跳出循环
  • find 只要找到目标值,就会跳出循环
相关推荐
Dxy123931021611 分钟前
Python 去除 HTML 标签获取纯文本
开发语言·python·html
砚底藏山河29 分钟前
python、JavaScript 、JAVA,定制化数据服务,助力业务高效落地
java·javascript·python
11_x36 分钟前
JS 底层:乖宝宝引擎和乖宝宝声明
javascript
洛的地理研学36 分钟前
Python下载并处理MOD13A3植被指数数据
开发语言·python
flex罗小黑36 分钟前
前端手机号脱敏的 4 个层级,你在第几层?
javascript
humcomm38 分钟前
Java 新特性2026年5月速览
java·开发语言
孙69034240 分钟前
electron播放本地任意格式的视频
前端·javascript
xiao_li_ya40 分钟前
C++学习日记1(`*`的理解、const关键词)
开发语言·c++
码力斜杠哥1 小时前
Rust初习录(6)Rust的 if 玩法
开发语言·python·rust
聆风吟º1 小时前
【C标准库】深入理解C语言 isalpha 函数详解:判断字符是否为字母
c语言·开发语言·库函数·isalpha