js跳出for循环

js跳出for循环

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

代码语言:javascript复制

const list = ['a', 'b', 'c']

for (let i = 0; i < list.length; i++) {

console.log(`${i} ${list[i]}`)

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

代码语言:javascript复制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复制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复制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复制 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复制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、定义变量条件

相关推荐

PS使用全攻略:从零基础到专业技巧,你不可不知的必备指南
excel怎么一下子填满一列
365直播电视

excel怎么一下子填满一列

📅 06-24 👁️ 547
打发蛋清和全蛋的基本原理是什么你知道吗?那为什么打发蛋清/全蛋一定要加糖呢?还得分三次加呢?
《异度神剑2》支线任务-第二章
o365邮箱登录

《异度神剑2》支线任务-第二章

📅 08-12 👁️ 6405
iPhone8和iPhone8 Plus有什么区别?这样一对比就有答案了|163
全胜能拿冠军吗?女排世界杯规则新变化,先比积分再看胜场