JavaScript如何跳出for循环

365bet中国 2025-09-16 06:50:15 阅读: 2121

前言:

在实际写for循环去遍历数组的时候,当我们找到满足某个条件的数据并且为了节约浏览器的性能,免不了有要结束for循环的需求,以下是常见的跳出for循环的方法。

如何跳出for单循环

1、终止for单循环使用break

var array = [1,2,3,4,5];

for (let index = 0; index < array.length; index++) {

const element = array[index];

console.log(element);

if (element==3) {

break;

}

}

打印出的结果为1,2,3,当满足3这个条件时终止循环语句。

2、结束当前循环,进入下个循环时使用continue

var array = [1,2,3,4,5];

for (let index = 0; index < array.length; index++) {

const element = array[index];

if (element==3) {

continue;

}

console.log(element);

}

打印出的结果为1,2,4,5,当满足3这个条件时跳出当前循环,不执行continue后面的语句,转而执行下个循环。

3、当循环语句写在函数中时直接用return语句终止循环,作用相当于break

var func = function() {

var array = [1,2,3,4,5];

for (let index = 0; index < array.length; index++) {

const element = array[index];

console.log(element);

if (element==3) {

return;

}

}

}

func();

打印出的结果为1,2,3,当满足3这个条件时终止循环语句。

如何跳出for双重循环

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

1、使用label语句

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

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);

}

}

打印出的结果如图所示,当满足i==j==2时终止了双重循环。

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

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语句终止双重循环

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结束当前循环

var array = [1,2,3,4,5];

array.forEach((el,i)=>{

if (el==3) {

return;

}

console.log(el);

})

打印出的结果为1,2,4,5,当满足3这个条件时跳出当前循环,不执行return后面的语句,转而执行下个循环,其作用相当于for循环里使用continue。

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