在本教程中,您将学习如何使用 JavaScript break语句提前终止循环。

label 声明

在 JavaScript 中,您可以 label 标记一条语句供以后使用。下面是该语句的语法label

label: statement;

在此语法中,label 可以是任何有效的标识符。例如,下面显示了如何使用标签 outer 来标记 for 循环:

outer: for (let i = 0; i < 5; i++) {
    console.log(i);
}

定义标签后,也就是 label,您可以在 break 或者 continue 语句中引用它。

JavaScript break 语句简介

break 语句可以提前地终止一个循环,例如 fordo...whilewhile 循环、一个switch或一个 label 语句。下面是 break 语句的语法:

break [label];

在此语法中,如果您在循环或 switch 中使用 break 语句,则 label是可选的。 但是,如果将 break 语句与 label 语句一起使用,则需要指定它。

本教程重点介绍如何使用 break 语句提前终止循环。

在 for 循环使用 JavaScript break 语句

以下 for 循环语句输出五个数字从 04

for (let i = 0; i < 5; i++) {
  console.log(i);
}

输出:

0
1
2
3
4

要提前终止 for 循环,您可以使用 break 语句。例如,下面说明了如何在 for 循环中使用 break 语句:

for (let i = 0; i < 5; i++) {
  console.log(i);
  if (i == 2) {
    break;
  }
}

输出:

0
1
2

在这个例子中,我们在循环中使用了一个 if 语句。如果 i 的当前值为2,则if语句执行 终止循环的 break 语句。

此流程图说明 break 语句如何在 for 循环中工作:

JavaScript for break

break 语句终止嵌套循环

嵌套循环在一个循环中包含另一个循环。例如,下面使用嵌套 for 循环输出一对数字从 13

for (let i = 1; i <= 3; i++) {
  for (let j = 1; j <= 3; j++) {
    console.log(i, j);
  }
}

输出:

1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

如果在内循环中使用 break 语句,它只会终止内循环。例如:

for (let i = 1; i <= 3; i++) {
  for (let j = 1; j <= 3; j++) {
    if (i + j == 4) {
      break;
    }
    console.log(i, j);
  }
}

输出:

1 1
1 2
2 1

在此示例中,如果 ij 的总和为 4,则 break 语句终止内循环。要终止嵌套循环,您可以使用 label 标签语句。例如:

outer: for (let i = 1; i <= 3; i++) {
  for (let j = 1; j <= 3; j++) {
    if (i + j == 4) {
      break outer;
    }
    console.log(i, j);
  }
} 

输出:

1 1
1 2

在这个例子中,我们用标签 outer 来标记外循环。 在内部循环中,我们在 break 语句中指定了外部标签 outer 。 如果 i 和 j 之和为 4,则 break 语句终止嵌套循环。

在 while 循环使用 JavaScript break 语句

下面使用 while 循环将 1 到 5 的五个数字输出到控制台:

let i = 0;

while (i < 5) {
  i++;
  console.log(i);
}

输出:

1
2
3
4
5

for循环一样,break 语句可以提前终止 while 循环。例如:

let i = 0;

while (i < 5) {
  i++;
  console.log(i);
  if (i == 3) {
    break;
  }
}

输出:

1
2
3

在本例中,当 i 的当前值为 3 时,break 语句终止循环。 因此,您只会在输出中看到三个数字。

以下流程图说明 break 语句如何在 while 循环工作:

javascript break while 循环

在 do...while 循环使用 JavaScript break 语句

下面的示例使用 do...while 语句将 0 到 5 的五个数字输出到控制台:

let i = 0;

do {
  i++;
  console.log(i);
} while (i < 5);

输出:

1
2
3
4
5

while 循环一样,您可以使用 break 语句来终止 do...while 循环。比如:

let i = 0;

do {
  i++;
  console.log(i);
  if (i == 3) {
    break;
  }
} while (i < 5);

输出:

1
2
3

以下流程图展示 break 语句如何在 do while 循环工作:

JavaScript break do while循环

结论

  • 使用 break 语句提前地终止for、while 和 do...while 的循环。
  • 在嵌套循环中使用时,break 语句终止内部循环。 要终止嵌套循环,您可以使用 label 标签语句。