JavaScript continue语句
在JavaScript中,我们可以完全控制循环语句。有时候,在循环中我们需要跳过一些代码并继续下一次迭代。这可以通过使用JavaScript的 continue 语句来实现。
continue语句在JavaScript中用于跳过循环的一次迭代。不同于 break 语句, continue 语句会中断当前迭代并继续执行下一次循环的迭代。它可以在 for循环、while循环 和 do-while循环 中使用。当它在 while循环 中使用时,它会跳回到条件部分。如果它在 for循环 中使用,流程将移动到更新表达式。
当我们使用 continue 语句时,程序的流程立即移动到条件表达式,如果条件为真,则开始下一次迭代;否则,控制流程退出循环。
语法
continue;
OR
continue[label]; // Using the label reference
它可以带有或不带有标签引用。标签是一个语句的标识符名称。它是可选的。
让我们通过一些示例来理解continue语句。
示例1
在这个示例中,我们在for循环中使用continue语句。在这里,循环的迭代从1开始,到7结束。有一个条件语句,检查迭代是否达到4。当迭代达到4时,由于continue语句,迭代被跳过,并移到下一个迭代。
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<h1> Example of the continue statement in JavaScript</h1>
<h3> Here, you can see that "a == 4" is skipped. </h3>
<p id = "para">
</p>
<script>
var res = "";
var a;
for (a = 1; a <=7; a++) {
if (a == 4) {
continue;
}
res += "The value of a is : " + a + "<br>";
}
document.getElementById("para").innerHTML = res;
</script>
</body>
</html>
输出
在上述代码执行后,输出结果将会是 –
示例2
在这个示例中,我们在while循环中使用了 continue 语句。在这里,我们定义了一个数组 ‘rainbow’ 。循环的迭代从0开始,结束于数组的长度。有一个使用OR (||)运算符的条件语句,它在迭代达到值’Magenta’和’Skyblue’时进行检查。当迭代达到适当的值时,由于continue语句的存在,迭代被跳过并移动到下一个迭代。
<!DOCTYPE html>
<html>
<head>
<title> JavaScript Continue Statement </title>
</head>
<body>
<h1> Example of the JavaScript Continue Statement </h1>
<h3> You can see that the arrray values "Magenta" and "Skyblue" are skipped. </h3>
<script>
var rainbow = ["Violet", "Indigo", "Magenta", "Blue", "Skyblue", "Green", "Yellow", "Orange", "Red"];
var i = 0;
var res = "";
while(i < rainbow.length){
if (rainbow[i] == "Magenta" || rainbow[i] == "Skyblue") {
i++;
continue;
}
res = "";
res += rainbow[i] + "<br>";
i++;
document.write(res);
}
</script>
</body>
</html>
输出
在上述执行之后,输出将为-
示例3
在这个示例中,我们使用了一个带有continue语句的标签。有一个嵌套的for循环,外部循环被标记为 ‘label1’ 和内部循环被标记为 ‘label2’ 。
<!DOCTYPE html>
<html>
<body>
<p> This is an example of the continue statement with the label </p>
<p id="para"></p>
<script>
var res = "";
var i, j;
label1: // This loop is labeled as "label1"
for (i = 1; i <=5; i++) {
res += "<br>" + "i = " + i + ", j = ";
label2: // This loop is labeled as "label2"
for (j = 1; j <= 4; j++) {
if (j == 2) {
continue label2;
}
document.getElementById("para").innerHTML = res += j + " ";
}
}
</script>
</body>
</html>
输出
执行后,输出结果为 –