TypeScript continue 语句

注意: 如果您是 TypeScript 新手,请先查看我们的 TypeScript 入门 教程。


continue语句会跳过循环的当前迭代,并继续到下一个迭代。

这里有一个continue语句的简单示例。您可以阅读本教程的其余部分以了解更多信息。

示例

// Display odd numbers

for (let i: number = 1; i <= 5; i++) {
    // Skip the iteration if i is even
    if (i % 2 === 0) {
        continue;
    }
    console.log(i);
}

// Output:
// 1
// 3
// 5

在这里,当i为偶数时,continue会跳过循环体其余部分的执行。因此,只打印奇数。


TypeScript continue语句的工作原理

Working of continue statement in TypeScript
TypeScript continue语句的工作原理

注意continue语句通常用在条件语句中,例如if...else


示例 1:TypeScript for 循环中的 continue

我们可以使用continue语句来跳过for循环中的迭代。例如,

for (let i: number = 1; i <= 10; ++i) {

    // Skip iteration if value of
    // i is between 4 and 9 (exclusive)
    if (i > 4 && i < 9) {
        continue;
    }
    console.log(i);
}

输出

1
2
3
4
9
10

在上面的示例中,我们使用for循环在每次迭代中打印变量i的值。注意这条语句,

if (i > 4 && i < 9) {
    continue;
}

这里,当i大于4且小于9时,continue语句将被执行。

因此,输出将跳过5678这些值。


示例 2:TypeScript while 循环中的 continue

我们也可以在while循环中使用continue语句。例如,

let num: number = 1;

while (num <= 10) {

// Skip iteration if num is even if (num % 2 === 0) { ++num; continue; }
console.log(num); ++num; }

输出

1
3
5
7
9

在上面的示例中,我们使用while循环打印从110的奇数。注意这一行,

if (num % 2 === 0) {
    ++num;
    continue;
}

当数字为偶数时,

  1. num的值为下一次迭代递增。
  2. 然后continue语句跳过当前迭代。

请注意,我们在if语句的内部和外部都增加了num的值。

在 if 块内部

您必须在执行continue语句之前增加num的值。否则,您将创建一个无限循环,因为num <= 10将始终为true

在 if 块外部

if块未执行时,您的增加num的代码也将被跳过。因此,您必须在if块外部再次增加num以防止无限循环。


更多关于 TypeScript continue

TypeScript 嵌套循环中的 continue。

continue在两个嵌套循环中使用时,continue仅影响内层循环。例如,

// Nested for loops

// Outer loop
for (let i: number = 1; i <= 3; i++) {

    // Inner loop
    for (let j: number = 1; j <= 3; j++) {
        if (j == 2) {
            continue;
        }
        console.log(`i = ${i}, j = ${j}`);
    }
}

输出

i = 1, j = 1
i = 1, j = 3
i = 2, j = 1
i = 2, j = 3
i = 3, j = 1
i = 3, j = 3

在上面的程序中,当j == 2时,continue语句只跳过内层循环的迭代。

Using continue inside a nested loop
在嵌套循环中使用 continue
使用带标签的 continue。

在嵌套循环中,可以使用带标签的 continue 语句来跳过外层循环的迭代。

Working of labeled continue statement in TypeScript
TypeScript 中带标签的 continue 语句的工作原理

让我们看一个例子。

outerLoop: for (let i: number = 1; i <= 3; i++) {
  
    innerLoop: for (let j: number = 1; j <= 3; j++) {

        if (j === 2) {
            continue outerLoop;
        }

        console.log(`i = ${i}, j = ${j}`);
    }
}

输出

i = 1, j = 1
i = 2, j = 1
i = 3, j = 1

在上面的示例中,我们为循环标记了

outerLoop: for (let i: number = 1; i <= 3; i++) {...}
innerLoop: for (let j: number = 1; j <= 3; j++) {...}

这有助于我们识别循环。注意带标签的continue语句的使用

if (j === 2) {
    continue outerLoop;
}

每当j === 2时,这会跳过outerLoop的当前迭代。


另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战