JavaScript foreach 方法跳出循环
2021/11/5 22:11:18
本文主要是介绍JavaScript foreach 方法跳出循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
通常,在 for
循环中跳出循环可以用 break
或者 continue
来跳出循环。
break
:跳出循环;
continue
:跳过当次循环。
而有时候需要在 foreach
中跳出循环,该怎么做呢?
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。对于空数组不会执行回调函数。
回调函数的参数 :
function(currentValue, index, arr)
currentValue 必需。当前元素
index 可选。当前元素的索引值
arr 可选。当前元素所属的数组对象
在 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
中使用 return
语句的作用只能跳出当前循环(实现了continue
的效果),并不能跳出整个循环,没达到期待的效果,满足条件后还继续执行了循环。
在 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)
运行结果:
和 break 一样,直接报错了,后面的代码也没执行。
上面的例子可以看到,foreach
不能使用break
和continue
这两个关键字。
因为 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)
运行效果:
这篇关于JavaScript foreach 方法跳出循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南