JavaScript foreach 方法跳出循环

JavaScript foreach 方法跳出循环通常 在 for 循环中跳出循环可以用 break 或者 continue 来跳出循环 break 跳出循环 continue 跳过当次循环 而有时候需要在 foreach 中跳出循环 该怎么做呢 forEach 方法用于调用数组的每个元素 并将元素传递给回调函数 对于空数组不会执行回调函数 回调函数的参数 function currentValue index arr currentValue 必需 当前元素 index 可选 当前元素的索引值 arr

通常,在 for循环中跳出循环可以用 break或者 continue 来跳出循环。
break:跳出循环;
continue:跳过当次循环。

而有时候需要在 foreach 中跳出循环,该怎么做呢?

在 forEach 中使用return:

let arr = [1,2,3,4,5,6,7,8,9]; let num = 6 arr.forEach((item)=>{ 
    if(item == num) { 
    return; } console.log('item',item); }) console.log(123) 

在 forEach 中使用break:

let arr = [1,2,3,4,5,6,7,8,9]; let num = 6 arr.forEach((item)=>{ 
    if(item == num) { 
    break; } console.log('item',item); }) console.log(123) 

在 forEach 中使用continue:

let arr = [1,2,3,4,5,6,7,8,9]; let num = 6 arr.forEach((item)=>{ 
    if(item == num) { 
    continue; } console.log('item',item); }) console.log(123) 

上面的例子可以看到,foreach不能使用breakcontinue这两个关键字。

因为 forEach 本身无法跳出循环,必须遍历所有的数据才能结束,它传入的是一个回调函数,因此形成了一个作用域,它内部所定义的变量不会像for循环一样污染全局变量。

解决方法

forEach方法跳出循环 —— 通过 try catch 抛出异常的方式跳出循环

let arr = [1,2,3,4,5,6,7,8,9]; let num = 6 try { 
    arr.forEach((item, i)=> { 
    console.log('item',item) if (item === num) { 
    throw new Error('LoopInterrupt'); //满足条件,跳出循环 } }) } catch (e) { 
    if (e.message !== "LoopInterrupt") throw e } console.log(123) 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231459.html原文链接:https://javaforall.net

(0)
上一篇 2025年12月11日 下午5:01
下一篇 2025年12月11日 下午5:22


相关推荐

  • AWStats简介

    AWStats简介安装[url]http://sourceforge.net/projects/awstats/[/url]下载安装包后:GNU/Linux:tarzxfawstats-version.tgzawstats的脚本和静态文件缺省都在wwwroot目录下:将cgi-bin目录下的文件都部署到cgi-bin/目录下:/home/apache/cgi-bin/awstats/…

    2022年7月16日
    19
  • 通俗理解爬山算法

    通俗理解爬山算法爬山算法贪心算法爬山算法即是模拟爬山的过程 随机选择一个位置爬山 每次朝着更高的方向移动 直到到达山顶 即每次都在临近的空间中选择最优解作为当前解 直到局部最优解 这样算法会陷入局部最优解 能否得到全局最优解取决于初始点的位置 初始点若选择在全局最优解附近 则就可能得到全局最优解

    2026年3月19日
    1
  • xshell使用技巧(赚分享平台怎么样)

    Xshell是做什么用的?Xshell使用教程分享前言Xshell的特点Xshell如何远程连接Linux服务器最后分享几个Xshell快捷键前言Xshell是一款功能强大的终端模拟器,支持SSH1,SSH2,SFTP,TELNET,RLOGIN和SERIAL。通过提供业界先进的性能,Xshell包含了其他SSH客户端无法发现的功能和优势,作为新手,可能有很多不明白的地方,今天飞飞简单介绍一下Xshell和连接Linux服务器方法支持SSH1,SSH2,SFTP,TELNET,RLOGIN和SERI

    2022年4月14日
    54
  • Swagger注解-@ApiParam

    Swagger注解-@ApiParam使用场景在 Rest 接口上或 Rest 接口参数前边使用概述为 Rest 接口参数添加其它元数据 导入到 yapi 中不会被解析 属性属性名称数据类型默认值说明 nameString 参数名称 参数名称将从 filed method parameter 名称中派生 但你可以覆盖它 路径参数必须始终命名为它们所代表的路径部分 valueString

    2026年3月18日
    1
  • CheckedListBox 当中项的状态改变

    CheckedListBox 当中项的状态改变首先 说下我需要实现的功能 就是把获得数据 Id 显示在 CheckedListB 上 单击空白处不响应 如果在 CheckedListB 上勾选的项就加入到 list 集合中 取消勾选状态就从集合中移除 之前我碰到一个问题 如图 我采用 SelectedInde 和 MouseClick 事件 都不能解决我碰到的问题 解决办法 nbsp voidlstMotes ItemChe

    2026年3月18日
    2
  • 全国各省市经纬度范围

    全国各省市经纬度范围本文数据来自于 http horizon2020 wqdian cn 该网站的省市范围数据来自于天地图行政数据接口 API 和高德地图的逆地理编码本文仅供参考 以国家的相关规定为准各省经纬度范围 省名经度范围纬度范围安徽省 114 119 34 65234 澳门特别行政区 113 113 22 北京市 115 117

    2026年3月20日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号