js 的forEach 如何跳出循环「建议收藏」

js 的forEach 如何跳出循环「建议收藏」forEach()方法用于调用数组的每个元素,并将元素传递给回调函数。对于空数组不会执行回调函数回调函数的参数function(currentValue,index,arr)currentValue必需。当前元素index可选。当前元素的索引值…

大家好,又见面了,我是你们的朋友全栈君。

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。对于空数组不会执行回调函数

回调函数的参数   function(currentValue, index, arr)    

                           currentValue  必需。当前元素

                           index   可选。当前元素的索引值  

                           arr       可选。当前元素所属的数组对象       

之前没有注意 如何 跳出循环,一直做if 判断做出操作,直到有一次有这样的需求 才发现  break 和  return false  无效 

let  arr =[1,2,3,4,5,6,7,8]   

// 直接就报错了
arr.forEach(function(item,index){

    if (item === 4) {

        break;
    }
    alert(item);
});

js 的forEach 如何跳出循环「建议收藏」

let  arr =[1,2,3,4,5,6,7,8]   
arr.forEach(function(item,index){

    if (item === 4) {

        return false 
    }
    console.log(item);
});

期望 会遍历数组所有元素,只是执行到第4次,return false下面的代码不再执行而已

js 的forEach 如何跳出循环「建议收藏」

实际上没有达到效果 

return fasle  只是中止本次继续执行,而不是终止循环

解决办法  可以通过抛出异常的方式终止循环

try {

    let  arr =[1,2,3,4,5,6,7,8] 
    
    // 执行到第4次,结束循环
    arr.forEach(function(item,index){

        if (item === 4) {

            throw new Error(“EndIterative”);
        }
        console.log(item);// 1,2,3
    });
} catch(e) {

    if(e.message!=”EndIterative”) throw e;
};
// 下面的代码不影响继续执行
console.log(10);

js 的forEach 如何跳出循环「建议收藏」

另外 for 循环 可以 用 break 来终止循环

最后给大家分享一个服务器秒杀优惠活动 首年只需要74元  相当优惠呀

【腾讯云】云产品限时秒杀,爆款2核4G云服务器首年74元
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性「建议收藏」

    【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性「建议收藏」在进行UI布局的时候,可能经常会用到 android:gravity 和 android:layout_Gravity这两个属性。 关于这两个属性的区别,网上已经有很多人进行了说明,这边再简单说一下。(资料来自网络)    LinearLayout有两个非常相似的属性:android:gravity与android:layout_gravity。 他们的区别在于: android:gravi

    2022年7月26日
    7
  • Mac WebServer、MySql安装、PHPAdmin安装

    Mac WebServer、MySql安装、PHPAdmin安装

    2021年9月1日
    84
  • matlab超前滞后校正装置设计_matlab劳斯判据

    matlab超前滞后校正装置设计_matlab劳斯判据且1引言不确定性与时滞是工业过程中普通存在的现象,这使得系统的分析与综合变得更加复杂和困难,同时也是导致系统不稳定和性能恶化的主要因素.因此,对不确定时滞系统的鲁棒控制问题进行研究,具有重要的理论意义和实际应用价值.近年来,不确定时滞系统的稳定性研究得到了广泛的关注匡5}.中立时滞系统作为一类非常重要的控制系统,其稳定性研究己有不少有价值的结论{3一11}.中立时滞系统的稳定条件可分为两大类:时滞…

    2022年9月30日
    2
  • html超链接悬浮,下列css代码,能控制鼠标悬浮其上的超链接样式

    html超链接悬浮,下列css代码,能控制鼠标悬浮其上的超链接样式摘要:下列不属特性品的主要质量于食。标悬置为将E1端道化的命令是非信方式口设。新中国成0年立7来,上的式特色民主协商中国局面)的成(已形,特色提供中国主义制度障要保为建完善立和了重社会。…下列不属特性品的主要质量于食。变动成本法下,制鼠包括期间成本。标悬置为将E1端道化的命令是非信方式口设。在全基础竣后的售的()内程报业务完成后交付应数据。些积制度作用建立极的有哪务员和完回避善公。特点休的公务…

    2022年7月19日
    14
  • 我的程序里

    我的程序里我的程序里没有一点点防备也没有一丝顾虑突然错误出现在我的日志里带给我惊喜身不自已可是你偏又这样在我不知不觉中悄悄的消失从我的堆栈里没有音讯剩下了报警短信你存在我某一个模块里我的梦里,我的心里,我的

    2022年7月3日
    23
  • 2019-05-21 SpringBoot集成UReport2

    2019-05-21 SpringBoot集成UReport2

    2021年7月7日
    127

发表回复

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

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