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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 零基础学Java(4)字符串

    零基础学Java(4)字符串字符串从概念上讲,Java字符串就是Unicode字符序列。例如,字符串"Java\u2122"由5个Unicode字符J、a、v、a和™组成。Java没有内置的字符串类型,而是

    2022年8月7日
  • pycharm 激活成功教程 永久激活 (持续更新)_pycharm2017激活成功教程

    pycharm 激活成功教程 永久激活 (持续更新)_pycharm2017激活成功教程pycharm2017.1×64license服务器http://idea.imsxm.com/或者http://idea.liyang.io

    2022年8月26日
  • java的动态代理机制详解_java为什么是静态语言

    java的动态代理机制详解_java为什么是静态语言说起java动态代理,在我刚开始学java时对这项技术也是十分困惑,明明可以直接调通的对象方法为什么还要使用动态代理?随着学习的不断深入和工作经验的积累,慢慢的体会并理解了java动态代理机制。昨天再给公司新同事做技术培训时有同学就对动态代理产生了疑问,我这里梳理一遍一并记录一下,方便大家查看对自己也是加深记忆。(1)什么是代理?大道理上讲代理是一种软件设计模式,目的地希望能做到代码重用。具体上讲…

    2022年10月9日
  • linux中如何用ftp命令下载文件,linux中ftp下载文件命令的用法

    linux中如何用ftp命令下载文件,linux中ftp下载文件命令的用法linxu下的ftp命令是用来下载文件或者上传文件的,下面由学习啦小编为大家整理了linux的ftp下载文件命令的用法的相关知识,希望对大家有帮助!一、linux中的ftp下载文件命令的用法从远程ftp服务器下载文件的命令格式:get远程ftp服务器上当前目录下要下载的文件名[下载到本地机器上当前目录时的文件名],如:getnmap_file[nmap]意思是把远程ftp服务器下的文件nm…

    2022年8月24日
  • autoconf产生Makefile流程

    autoconf产生Makefile流程生成Makefile的流程。参考http://www.ibm.com/developerworks/cn/linux/l-makefile/首先进入project目录,在该目录下运行一系列命令,创建和修改几个文件,就可以生成符合该平台的Makefile文件,操作过程如下:1)运行autoscan命令2)将configure.scan文件重命名为configure.

    2022年6月3日
  • StringUtils.isBlank_StringBuilder

    StringUtils.isBlank_StringBuilderStringUtils.isNotBlank()

    2022年8月12日

发表回复

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

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