JS forEach跳出循环2种实现方法


Posted in Javascript onJune 24, 2020

假设当我们只需知道某个数组有没有某个属性,如果找到了直接跳出循环,省略掉剩下的循环步骤是较优化的操作,但是for中是可以利用break跳出循环,但break在forEach中无效,那么forEach能不能跳出循环呢?当然是可以。

1.正常for循环break跳出循环

let strArr = ['a', 'b', 'c', 'd'],
  i = 0,
  length = strArr.length;
for (; i < length; i++) {
  console.log(strArr[i]);//a
  if(arr[i] === 'a'){
    //do something
  };
  break;
};

2.forEach结合try...catch()可以跳出循环

try {
  var arr = [1, 2, 3, 4];
  arr.forEach(function (item, index) {
    //跳出条件
    if (item === 3) {
      throw new Error("LoopTerminates");
    }
    //do something
    console.log(item);
  });
} catch (e) {
  if (e.message !== "LoopTerminates") throw e;
};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
我也种棵OO树JXTree[js+css+xml]
Apr 02 Javascript
javascript之AJAX框架使用说明
Apr 24 Javascript
javascript 快速排序函数代码
May 30 Javascript
js带按钮的提示框可供选择示例代码
Sep 17 Javascript
Markdown+Bootstrap图片自适应属性详解
May 21 Javascript
JavaScript排序算法动画演示效果的实现方法
Oct 18 Javascript
jQuery时间日期三级联动(推荐)
Nov 27 Javascript
Node.js中的http请求客户端示例(request client)
May 04 Javascript
vue-router 手势滑动触发返回功能
Sep 30 Javascript
详解如何快速配置webpack多入口脚手架
Dec 28 Javascript
vue工程全局设置ajax的等待动效的方法
Feb 22 Javascript
Vue的编码技巧与规范使用详解
Aug 28 Javascript
js判断鼠标移入移出方向的方法
Jun 24 #Javascript
JS判断数组是否包含某元素实现方法汇总
Jun 24 #Javascript
JS script脚本中async和defer区别详解
Jun 24 #Javascript
javascript实现前端分页效果
Jun 24 #Javascript
JS实现多选框的操作
Jun 24 #Javascript
微信小程序实现发微博功能的示例代码
Jun 24 #Javascript
JavaScript实现答题评分功能页面
Jun 24 #Javascript
You might like
PHP获取当前文件所在目录 getcwd()函数
2009/05/13 PHP
PHP 简单数组排序实现代码
2009/08/05 PHP
PHP学习笔记 用户注册模块用户类以及验证码类
2011/09/20 PHP
php实现无限级分类
2014/12/24 PHP
php实现数组纵向转横向并过滤重复值的方法分析
2017/05/29 PHP
php apache开启跨域模式过程详解
2019/07/08 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
PHP isset empty函数相关面试题及解析
2020/12/11 PHP
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
在网页中使用document.write时遭遇的奇怪问题
2010/08/24 Javascript
js对数字的格式化使用说明
2011/01/12 Javascript
父页面显示遮罩层弹出半透明状态的dialog
2014/03/04 Javascript
IE6已终止操作问题的2种情况及解决
2014/04/23 Javascript
js+CSS实现弹出居中背景半透明div层的方法
2015/02/26 Javascript
详解js的六大数据类型
2016/12/27 Javascript
详解用node搭建简单的静态资源管理器
2017/08/09 Javascript
修改layui的后台模板的左侧导航栏可以伸缩的方法
2019/09/10 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
基于JavaScript获取url参数2种方法
2020/04/17 Javascript
Python字符串和字典相关操作的实例详解
2017/09/23 Python
自学python的建议和周期预算
2019/01/30 Python
Python 3 判断2个字典相同
2019/08/06 Python
利用python实现短信和电话提醒功能的例子
2019/08/08 Python
Python 调用 Windows API COM 新法
2019/08/22 Python
python django生成迁移文件的实例
2019/08/31 Python
python处理RSTP视频流过程解析
2020/01/11 Python
python 逆向爬虫正确调用 JAR 加密逻辑
2021/01/12 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
互动出版网:专业书籍
2017/03/21 全球购物
在数据文件自动增长时,自动增长是否会阻塞对文件的更新
2014/05/01 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
2015/09/16 面试题
历史学专业毕业生求职信
2013/09/27 职场文书
庆祝教师节活动方案
2014/01/31 职场文书
2015年手术室工作总结
2015/05/11 职场文书
Python操作CSV格式文件的方法大全
2021/07/15 Python