英文 | https://www.javascripttutorial.net/
译文 | 杨小爱
在上节中,我们学习了JavaScript 程序流程中的break 语句,错过的小伙伴可以点击文章《【JavaScript 教程】第四章 程序流程07— JavaScript break 语句》进行学习。
那么,在今天的教程中,我们将一起来学习如何使用 JavaScript continue 语句跳过循环的当前迭代。
continue 语句跳过循环的当前迭代并立即跳转到下一个循环。因此,continue 语句必须出现在循环体中,否则会出错。
与 break 语句类似, continue 语句有两种形式:标记和未标记。有关 label 语句的更多信息,请参阅 break 语句教程《【JavaScript 教程】第四章 程序流程07— JavaScript break 语句》。
使用未标记的 JavaScript continue 语句
未标记的 continue 语句跳过 for、do...while 或 while 循环的当前迭代。
continue 语句将其余代码跳过到循环最内层主体的末尾,并计算控制循环的表达式。
在 for 循环中, continue 跳过它下面的所有语句。
for (var i = 0; i < count; i++) {
if (condition)
continue; // Jumps to expression: i++
// more statement here
}
在 while 或 do-while 循环中,它跳回到控制循环的表达式。
while (expression){ // continue jumps here
if (condition) {
continue; // Jumps to expression
}
// more statements here
// ...
}
do{
if (condition) {
continue; // Jumps to expression
}
// more statements here
// ...
} while(expression); // continue jumps here
请参阅以下示例:
let s = 'This is a JavaScript continue statement demo.';
let counter = 0;
for (let i = 0; i < s.length; i++) {
if (s.charAt(i) != 's') {
continue;
}
//
counter++;
}
console.log('The number of s found in the string is ' + counter);
程序如何工作。
首先,counter变量设置为零。
其次,for 循环遍历一个字符串并计算字母 s“的出现次数。如果当前字符不是 s,则 continue 语句将跳过循环的其余部分并检查字符串中的下一个字符。如果当前字符是 s,脚本会增加计数器变量。
第三,console.log 将在字符串中找到的 s 字符的数量输出到控制台。
使用 JavaScript 继续使用标签
continue 语句可以包含一个可选标签,如下所示:
continue label;
label可以是任何有效的标识符。请参阅以下示例:
// continue with a label
outer: for (let i = 1; i <= 3; i++) {
for (let j = 1; j <= 3; j++) {
if ((i == 2) && (j == 2)) {
console.log('continue to outer');
continue outer;
}
console.log("[i:" + i + ",j:" + j + "]");
}
}
程序如何工作。
首先,for 循环将变量 i 和 j 从 1 增加到 3。
其次,在最里面的循环体内部,我们检查 i 和 j 是否都等于 2。如果是,我们向控制台输出一条消息并跳回outer标签。否则,我们显示的值i,并j在每个迭代。
下面显示了控制台窗口中脚本的结果。
[i:1,j:1]
[i:1,j:2]
[i:1,j:3]
[i:2,j:1]
continue to outer
[i:3,j:1]
[i:3,j:2]
[i:3,j:3]
从输出中可以看出,当 i 和 j 都等于 3 时,代码的执行会跳回到外循环中的表达式 i++。
总结
通过本教程的学习,我们知道了如何使用 JavaScript continue 语句跳过循环的当前迭代。
学习更多技能
请点击下方公众号