在我们使用 for循环、while循环 或者 do while循环 时,在某种条件满足的情况下,需要跳过本次循环,继续执行下一次循环,在 JavaScript 中,跳过本次循环的继续运行下一次循环使用的 关键字 为 continue。
JavaScript 的 continue 语句,有与其他编程语言类似的功能,但不同的是,JavaScript 的 continue 语句还可以选择具体跳过的循环。
注意 continue 与 break 的区别,break 是直接终止了当前的循环,当前的循环不会再运行,而 continue 只是跳过本次循环,当前循环的后续循环还会继续运行。
for (var i = startIndex; i < endIndex; i++){
//do something
if (condition) {
continue
}
}
上面的循环是在 condition 条件满足的情况下,跳过本次 for 循环,继续执行下一次循环。
loop:
for (var i = startIndex; i < endIndex; i++){
//do something
if (condition) {
continue loop
}
}
上面的循环是在 condition 条件满足的情况下,跳过 for 循环,运行 loop 同级层次的代码,注意这里的 loop 是标签,后面需要加上 :
。
使用 continue 语句,跳过本次循环
<!DOCTYPE html>
<html>
<head>
<title>JavaScript continue语句</title>
<script type="text/javascript">
console.log("嗨客网(www.haicoder.net)");
for (var i = 0; i < 5; i++) {
if (i == 3){
continue;
}
console.log("i =", i);
}
console.log("Over");
</script>
</head>
</html>
程序运行后,控制台输出如下:
首先,我们定义了一个 for循环,该循环从 0 开始到 5 结束,每次循环循环控制 变量 加 1,并打印当前循环控制变量的值。
但,我们这里使用了 if语句 判断,如果循环控制变量的值等于 3,那么我们就使用 continue 语句来跳过本次循环,因此最终结果只输出了 0,1,2,4,因为到 3 的时候,该次循环被 continue 语句跳过了,但后续的 4 还是会继续执行,如果这换成 break 语句,那么就不会输出 4。
使用 continue语句,跳过双重循环
<!DOCTYPE html>
<html>
<head>
<title>JavaScript continue语句</title>
<script type="text/javascript">
console.log("嗨客网(www.haicoder.net)");
for (var i = 0; i < 2; i++) {
for (var j = 0; j < 3; j++) {
if (j == 1){
continue;
}
console.log("i =", i, "j =", j);
}
}
console.log("Over");
</script>
</head>
</html>
程序运行后,控制台输出如下:
首先,我们定义了一个 for 循环,该循环从 0 开始到 2 结束,每次循环循环控制变量加 1。
同时,我们在外层的 for 循环里面又定义了一个 for 循环,该循环从 0 开始到 3 结束,每次循环循环控制变量加 1,并在该循环里面打印循环控制变量 i 和 j 的值。
我们在第二层循环里面使用了 if 语句判断,如果循环控制变量的值等于 1,那么我们就使用 continue 语句来跳过本次循环,我们看到最终 j 的值输出了 0 和 2,但 i 的值可以全部输出,因为这的 continue 语句只是跳过 j 为 1 的情况,所以 j 为 2 的循环可以继续运行。
使用 continue 语句,跳到指定循环
<!DOCTYPE html>
<html>
<head>
<title>JavaScript continue语句</title>
<script type="text/javascript">
console.log("嗨客网(www.haicoder.net)");
loop:
for (var i = 0; i < 3; i++) {
for (var j = 0; j < 20; j++) {
if (j == 2){
continue loop;
}
console.log("i =", i, "j =", j);
}
}
console.log("Over");
</script>
</head>
</html>
程序运行后,控制台输出如下:
首先,我们定义了一个 for 循环,该循环从 0 开始到 3 结束,每次循环循环控制变量加 1。
同时,我们在外层的 for循环里面又定义了一个 for 循环,该循环从 0 开始到 20 结束,每次循环循环控制变量加 1,并在该循环里面打印循环控制变量 i 和 j 的值。
我们在第二层循环里面使用了 if 语句判断,如果循环控制变量的值等于 2 了,那么我们就使用 continue 语句来跳过本次循环,并且,我们在 continue 后面加上了 loop 标签,我们看到最终 j 的值最大只能输出到 1,i 的值全部输出了,因为这的 continue 语句跳到了 loop 标签,而 loop 标签指向的就是最外层的循环。
在 JavaScript 中,跳过本次循环的继续运行下一次循环使用的关键字为 continue。JavaScript continue 语句语法:
for (var i = startIndex; i < endIndex; i++){
//do something
if (condition) {
continue
}
}
JavaScript continue 跳过指定循环语法:
loop:
for (var i = startIndex; i < endIndex; i++){
//do something
if (condition) {
continue loop
}
}