JavaScript forEach 方法跳出循环
2024/1/2 18:02:23
本文主要是介绍JavaScript forEach 方法跳出循环,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
for循环
JavaScript中,for循环可以使用 break
和 continue
来跳出:
- continue:跳出本次循环
- break:结束循环
for (let i = 0; i < 10; i++) { if (i === 1) { // 跳出本次循环,不会打印1 continue } if (i === 3) { // 结束循环,不会打印3和之后的数字 break } // 输出0 2 console.log(i) }
forEach循环
除了for循环,常用的forEach如何退出呢?
const numbers = [1, 2, 3, 4, 5] numbers.forEach(number => { if (number === 2) { // 跳出整个循环 break // SyntaxError: Illegal break statement } console.log(number) })
可以看到,直接使用break,会报非法中断语句错误
再试试 continue
:
numbers.forEach(number => { if (number === 2) { // 跳出当前循环 continue // SyntaxError: Illegal continue statement: no surrounding iteration statement } console.log(number) })
可以看到同样报错,continue不能在非循环语句中,原因是forEach的参数是一个回调函数,并不是循环语句,所以无法执行continue语句
具体可以参考:SyntaxError: continue must be inside loop - JavaScript | MDN
里面也提到了解决方法,使用 return
退出当前循环,以及使用 for of
代替forEach
numbers.forEach(number => { if (number === 2) { // 跳出当前循环 return } console.log(number) // 1 3 4 5 }
for (const number of numbers) { if (number === 2) { continue } console.log(number) // 1 3 4 5 }
但是就想使用 forEach
来跳出循环应该如何操作呢,上面文档中没有提到,但可以使用 try catch
来实现:
try { numbers.forEach(number => { if (number === 2) { throw new Error() } console.log(number) // 1 }) } catch (error) { console.log('捕获到错误') }
综上,使用forEach时,使用 return
跳出当前循环,使用 try catch
跳出整个循环。
这篇关于JavaScript forEach 方法跳出循环的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22[开源]10.3K+ Star!轻量强大的开源运维平台,超赞!
- 2024-11-21Flutter基础教程:新手入门指南
- 2024-11-21Flutter跨平台教程:新手入门详解
- 2024-11-21Flutter跨平台教程:新手入门与实践指南
- 2024-11-21Flutter列表组件教程:初学者指南
- 2024-11-21Flutter列表组件教程:新手入门指南
- 2024-11-21Flutter入门教程:初学者必看指南
- 2024-11-21Flutter入门教程:从零开始的Flutter开发指南
- 2024-11-21Flutter升级教程:新手必读的升级指南
- 2024-11-21Flutter升级教程:轻松掌握Flutter版本更新