跳出循环

除了循环条件为false时循环会结束以外,我们还可以使用一个特殊的break语句来立即跳出循环。

下面的程序展示了break语句的用法。该程序的作用是找出第一个大于等于 20 且能被 7 整除的数字。

  1. for (let current = 20; ; current++) {
  2. if (current % 7 == 0)
  3. break;
  4. }
  5. }
  6. // → 21

我们可以使用余数运算符(%)来判断一个数是否能被另一个数整除。如果可以整除,则余数为 0。

本例中的for语句省略了检查循环终止条件的表达式。这意味着除非执行了内部的break语句,否则循环永远不会结束。

如果你要删除这个break语句,或者你不小心写了一个总是产生true的结束条件,你的程序就会陷入死循环中。 死循环中的程序永远不会完成运行,这通常是一件坏事。

如果您在(英文版)这些页面的其中一个示例中创建了死限循环,则通常会询问您是否要在几秒钟后停止该脚本。 如果失败了,您将不得不关闭您正在处理的选项卡,或者在某些浏览器中关闭整个浏览器,以便恢复。

continue关键字与break类似,也会对循环执行过程产生影响。循环体中的continue语句可以跳出循环体,并进入下一轮循环迭代。