详解JS中如何终止foreach循环

 更新时间:2024年01月15日 09:31:35   作者:有蝉  
forEach专门用来循环数组,可以直接取到元素,同时也可以取到index值,终止forEach存在局限性,不能continue跳过或者break终止循环,所以本文给大家详细介绍了在JS中如何终止foreach循环,需要的朋友可以参考下

forEach专门用来循环数组,可以直接取到元素,同时也可以取到index值

存在局限性,不能continue跳过或者break终止循环,没有返回值,不能return

终止foreach循环 :运用抛出异常(try catch)可以终止foreach循环 

for of是ES6新引入的特性。修复了ES5中for in的不足

允许遍历 Arrays(数组)、Strings(字符串)、Maps(映射)、Sets(集合)等可迭代的数据结构

for of 支持return

最下方有个在项目中的实例 

错误用法1:使用break(会报错)

var array = ["第一","第二","第三","第四"];
        
// 直接就报错了
array.forEach(function(item,index){
    if (item == "第三") {
        break;
    }
    alert(item);
});

报错如下 

错误用法2:使用return fasle (只是终止本次循环)

相当于for 循环中的continue

var array = ["第一","第二","第三","第四"];
        
// 会遍历数组所有元素,只是执行跳过"第三",return false下面的代码不再执行而已
array.forEach(function(item,index){
    if (item == "第三") {
        return false;
    }
    console.log(item);// "第一" "第二" "第四"
});
console.log("以下代码")// 以下代码

正确用法:运用抛出异常(try catch)

try {
    var array = ["第一","第二","第三","第四"];
    
    // 执行到第3次,结束循环
    array.forEach(function(item,index){
        if (item == "第三") {
            throw new Error("第三");
        }
        console.log(item);// 第一 第二
    });
} catch(e) {
    if(e.message!="第三") throw e;
};
// 下面的代码不影响继续执行
console.log("下方代码");//下方代码

实例如下

      try {
        this.txt.forEach((item, index) => {
          if (!item.name) {
            throw new Error('单课不能为空!')
          }
          if (!item.val) {
            throw new Error('上课老师不能为空!')
          }
          if (!item.date) {
            throw new Error('上架时间不能为空!')
          }
        })
      } catch (e) {
        this.$message.warning(e.message)
        return
      };

以上就是详解JS中如何终止foreach循环的详细内容,更多关于JS终止foreach循环的资料请关注脚本之家其它相关文章!

相关文章

  • javascript实现table单元格点击展开隐藏效果(实例代码)

    javascript实现table单元格点击展开隐藏效果(实例代码)

    这篇文章主要介绍了javascript实现table单元格点击展开隐藏效果的实例代码讲解,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04
  • 微信JSAPI支付操作需要注意的细节

    微信JSAPI支付操作需要注意的细节

    这篇文章主要介绍了微信JSAPI支付中所遇到的那些坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • 理解Javascript_09_Function与Object

    理解Javascript_09_Function与Object

    在《理解Javascript_08_函数对象》中讲解了很多函数对象的问题,同时也留下了许多疑问,今天让我们来解答部分问题。
    2010-10-10
  • 记录一次开发微信网页分享的步骤

    记录一次开发微信网页分享的步骤

    这篇文章主要介绍了记录一次开发微信网页分享的步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • UserData用法总结 lanyu出品

    UserData用法总结 lanyu出品

    前一段做音乐和链接保存项目时用到了UserData,现在上线后效果不错,就把UserData的一些用法总结出来,大家一同分享。
    2010-07-07
  • JS获取时间的方法

    JS获取时间的方法

    这篇文章主要介绍了JS获取时间的方法,涉及date的相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-01-01
  • Js获取单选框radio的几种方式

    Js获取单选框radio的几种方式

    这篇文章主要介绍了Js获取单选框radio的几种方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • 利用404错误页面实现UrlRewrite的实现代码

    利用404错误页面实现UrlRewrite的实现代码

    要求:网站编码为utf-8,不适用于GB2312; 替换字符的正则可以自己增加和修改,以适合自己的网站;
    2008-08-08
  • vue bootstrap小例子一枚

    vue bootstrap小例子一枚

    这篇文章主要为大家详细介绍了vue bootstrap小例子一枚,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 原生Javascript插件开发实践

    原生Javascript插件开发实践

    本文主要介绍了原生Javascript插件开发实践思路与代码,具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01

最新评论