前言
一般我们在写程序的时候都会用到for循环来查找某一个值或者是对数据做指定的修改,但是我们要寻找的数据并不是放在循环的最后面的,所以当我们找到数据之后,为了节约浏览器的性能,免不了有结束循环的需求,以下是几种常用的跳出循环的方法。
跳过当前循环
我们可以使用continue
来跳过当前循环,直接进入下个循环。
for (var i = 0; i < 3; i++){
if(i == 2) continue;
console.log(i);
}
//0
//2
跳出当前循环
我们可以使用break
来跳出当前循环;结束当前for循环;如下当我们break
之后的代码就不会再执行了。
for (var i = 0; i < 5; i++){
if(i == 3) break;
console.log(i);
}
//0
//1
//2
跳出多层for循环
但是当我们使用了多层for循环的时候,使用continue
和break
就无法跳出外层的循环了,所以我们需要使用一些技巧,来跳出外层循环。
- 使用lebel语句
标签可以是任意的标识符,但不能是保留字,语句部分可以是任意语句。
jump:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) {
break jump;
}
console.log( i , j);
}
}
//0 0
//0 1
//0 2
//1 0
label也可以用于跳出代码块,注意要加 break 才能退出。
jump: {
console.log(1);
break jump;
console.log('不会输出');
}
console.log(2);
// 1
// 2
- 使用function
function jumpFor() {
for(var k=0;k<8;k++){
for(var j=0;j<4;j++){
if(k == j ){return false;}
console.log(k,j)
}
}
}
jumpFor()
//0 2
//0 3
//1 2
//1 3
小结
一般常用到的方法就是这些,此文做笔记使用,欢迎各位指正。