Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >js跳出for循环

js跳出for循环

原创
作者头像
IT工作者
修改于 2022-04-02 05:07:04
修改于 2022-04-02 05:07:04
14K00
代码可运行
举报
文章被收录于专栏:程序技术知识程序技术知识
运行总次数:0
代码可运行

for循环和forEach循环中中断和继续循环有些不一样的要注意

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制

const list = ['a', 'b', 'c']
for (let i = 0; i < list.length; i++) {
  console.log(`${i} ${list[i]}`)
}

如果您想在某个时候中断,比如说到达数组项b时,可以使用break语句:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const list = ['a', 'b', 'c']
for (let i = 0; i < list.length; i++) {
  console.log(`${i} ${list[i]}`)
  if (list[i] === 'b') {
    break
  }
}

你也可以使用break来跳出for…of…循环:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const list = ['a', 'b', 'c']

for (const value of list) {
  console.log(value)
  if (value === 'b') {
    break
  }
}

注意:无法中断forEach循环,因此如果需要跳出循环,请使用for或for..of。

如何跳出for双重循环

但是当我们使用了多层for循环的时候,使用continue和break就无法跳出外层的循环了,所以我们需要使用一些技巧,来跳出外层循环。

1、使用label语句

这种方式很少有人知道,但是必须得记住这种常用的方法。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var array = [1,2,3,4,5];
jump:
for (let i = 0; i < array.length; i++) {
    for (let j = 0; j < array.length; j++) {
        if (i==2&&j==2) {
            break jump;
        }
        console.log(i , j);
    }
}

2、定义一个字段用来判断什么时候跳出外层循环

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 var array = [1,2,3,4,5];
    var flag = false; // 为true时说明需要跳出外层循环
    for (let i = 0; i < array.length; i++) {
        for (let j = 0; j < array.length; j++) {
            if (i==2&&j==2) {
                flag = true;
                break; 
            }
            console.log(i,j);
        }
        if (flag) {
            break; 
        }
    }

打印出的结果和1中的结果一样。

3、当循环语句写在函数中时直接用return语句终止双重循环

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var array = [1,2,3,4,5];
var func = function() {
    for (let i = 0; i < array.length; i++) {
        for (let j = 0; j < array.length; j++) {
            if (i==2&&j==2) {
                return;
            }
            console.log(i,j);
        }
    }
}
func();

打印出的结果和1中的结果一样,这里使用retun跳出函数,同时也跳出循环语句。

如何跳出forEach循环

首先需要注意的是在forEach中不能使用continue和break,否则会报如下错误

添加描述

1、使用retun结束当前循环

2、使用数组的some()函数或every()函数替代forEach

3、定义变量条件

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
JavaScript基础之四——选择与循环结构
    选择结构与循环结构是编程中处理逻辑的核心结构,JavaScript中支持if-else和switch-case选择结构,支持for,for-in,do-while,while循环结构。并且可以使用break与continue语句进行循环的跳出,简单的条件选择if语句示例如下:
珲少
2018/08/15
5210
Kotlin入门(7)循环语句的操作
上一篇文章介绍了简单分支与多路分支的实现,控制语句除了这两种条件分支之外,还有对循环处理的控制,那么本文接下来继续阐述Kotlin如何对循环语句进行操作。 Koltin处理循环语句依旧采纳了for和while关键字,只是在具体用法上有所微调。首先来看for循环,Java遍历某个队列,可以通过“for (item : list)”形式的语句进行循环操作。同样Kotlin也能使用类似形式的循环,区别在于把冒号“:”换成了关键字“in”,具体语句形如“for (item in list)”。下面是Kotlin对数组进行循环处理的代码例子:
aqi00
2019/01/18
8510
js中常用的一些遍历方法,及一些跳出循环的方法
break:for循环 、 for in 、 for of、while、do{}while()、
全栈程序员站长
2022/08/28
3K0
JavaScript语句之常用for循环
普通for循环在 Array 中可以使用。遍历数组时,是遍历数组下标索引,通过下标去取值。
青年码农
2021/03/23
4060
js算法初窥01(排序算法01-冒泡、选择、插入)
  排序,我想大家一定经历过或者正在经历着。或许你不懂算法,对排序算法一无所知,但是你一定用过一些第三方库的api来一键排序,那么,在你享受便捷的同时,你是否想过它的底层是如何实现的?这样的算法实现方式是不是最好的?还有没有其它的可能性来实现更快速的排序?那么,希望这一篇文章过后。对于排序算法,你不会再觉得陌生和迷惑。
全栈程序员站长
2022/07/20
3500
js算法初窥06(算法模式03-函数式编程)
   在解释什么是函数式编程之前,我们先要说下什么是命令式编程,它们都属于编程范式的一种。命令式编程其实就是一块一块的代码,其中包括了我们要执行的逻辑或者判断或者一些运算。也就是按部就班的一步一步完成我们所需要的逻辑。而函数式编程则是类似于一个函数一个函数的调用。我们来看代码,更清晰的理解一下函数式编程与命令式编程的区别。 //这是命令式 var printArray = function (array) { for (var i = 0; i < array.length; i++) {
zaking
2018/07/04
3050
前端学习(31)~js学习(八):流程控制语句:循环结构(for和while)
循环语句:通过循环语句可以反复的执行一段代码多次。 for循环 for循环的语法 语法: for(①初始化表达式; ②条件表达式; ④更新表达式){ ③语句... } 执行流程: ①执行初始化表达式,初始化变量(初始化表达式只会执行一次) ②执行条件表达式,判断是否执行循环: 如果为true,则执行循环③ 如果为false,终止循环 ④执行更新表达式,更新表达式执行完毕继续重复② for循环举例: for (var i = 1; i <= 100; i++) { cons
Vincent-yuan
2020/03/18
8540
Vue进阶(幺零七):arr.forEach() 跳出循环
我们都知道for循环里要跳出整个循环是使用break,但在数组中用forEach循环如要退出整个循环呢?使用break会报错,使用return也不能跳出循环。
全栈程序员站长
2022/09/05
1.5K0
js中的四种for循环
最近刷题时遇到了几种不同for循环,因为没有深入了解导致做题时无法区分它们的用法,尤其是在以及在使用时的注意点。
用户7741497
2022/03/06
2K0
python 利用 for ... else 跳出双层嵌套循环
例如:搜索结果中共分为10页展示,加起来一共50条数据,现在要做的是从50条数据中下载指定数量的数据
冰霜
2022/03/19
1.1K0
python 利用 for ... else 跳出双层嵌套循环
JavaScript语句-流程控制语句
JavaScript定义了一组语句,语句通常用于执行一定的任务。语句可以很简单,也可以很复杂。 选择结构,可以在程序中创建交叉结构来指定程序流的可能方向。JavaScript中有四种选择结构: 1.单选结构(if) var x=5; if(x>0){ console.log(x);//输出5 } 单选结构由单独的if语句组成,只能控制程序的一个流向。 2.双选结构(if/else) var x=5; if(x===undefined){ x=3; } else{ console.log(x)
水击三千
2018/02/27
1.5K0
JS常用的循环遍历你会几种?
? 这是第 100 篇不掺水的原创,想要了解更多,请戳上方蓝色字体:政采云前端团队 关注我们吧~ 本文首发于政采云前端团队博客:JS常用的循环遍历你会几种 https://www.zoo.team/
政采云前端团队
2021/06/15
2.3K0
JS常用的循环遍历你会几种?
for……in for……of 区别
ES5的话也可以使用forEach,ES5具有遍历数组功能的还有map、filter、some、every、reduce、reduceRight等,只不过他们的返回结果不一样。但是使用foreach遍历数组的话,使用break不能中断循环,使用return也不能返回到外层函数。
用户2323866
2021/06/24
4360
js跳出for循环
注意:无法中断forEach循环,因此如果需要跳出循环,请使用for或for..of。
IT工作者
2021/12/28
12.3K0
JavaScript For循环与数组
for 是 JavaScript 提供的另一种循环控制的话句,它和 while 只是语法上存在差异。
用户9615083
2023/10/18
2640
JavaScript For循环与数组
面试官问我 JS 中 foreach 能不能跳出循环
当年懵懂无知的我被问到这个问题时,脑袋一片空白,因为我一度认为forEach可能只是为了方便书写所创造出来的语法糖,在业务代码中也经常使用,但没有思考过它存在的问题,本文旨在记录自己的心路历程,抛砖引玉,如果对你有所帮助那就更好啦。
茶无味的一天
2022/09/30
3.3K0
JavaScript 流程控制-循环
在程序中,一组被重复执行的语句被称之为循环体,能否继续重复执行,取决于循环的终止条件。由循环体及循环的终止条件组成的语句,被称之为循环语句
梨涡浅笑
2020/10/27
7680
JavaScript 流程控制-循环
PHP中如何跳出for循环
在PHP中,可以使用break关键字来跳出循环。当循环执行到break语句时,循环会被立即终止,程序控制权会跳转到循环外的下一条语句。
很酷的站长
2023/08/17
8680
PHP中如何跳出for循环
for 循环的 5 种写法,哪种最快?
来源:juejin.im/post/5ea63f3ef265da47b177b4b6
Leetcode名企之路
2021/10/08
1K0
JavaScript基础笔记
摘要: 1.语句 2.变量 2.1变量提升 3.标识符 4.注释 5.区块 6.条件语句 6.1 if 结构 6.2 if…else结构 6.3 switch结构 6.4三元运算
小胖
2018/06/27
1.2K0
相关推荐
JavaScript基础之四——选择与循环结构
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档