Get to know MDN better
此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
break 语句终止当前循环或 switch 语句,并将程序控制权转移到终止语句后的语句。当在带有标签的语句内部使用时,它还可以用于跳过该标记语句。
与要中断的语句的标签关联的标识符。如果 break 语句未嵌套在循环或 switch 中,则需要标签标识符。
执行到 break; 时,程序会跳出最内层的 switch 或循环语句,并继续执行其后的下一条语句。
执行到 break label; 时,程序会跳出标记为 label 的语句,并继续执行其后的下一条语句。break 语句需要嵌套在引用的标签内。标记语句可以是任何语句(通常是块语句),它不一定是另一个循环语句。
即使函数或类进一步嵌套在循环中,break 语句(无论是否带有标签)也不能在脚本、模块、函数体或静态初始化块的顶层使用。
以下函数有一个 break 语句,当 i 等于 3 时终止 while 循环,然后返回值 3 * x。
以下代码有一个 break 语句,当匹配到一个 case 并执行完相应的代码后,会终止 switch 语句。
以下代码展示了如何使用带标签的 break 语句。通过使用 break outerBlock 语句,可以跳出标记为 outerBlock 的嵌套循环或块语句。
一个 break 语句必须嵌套在它引用的任何标签内部。以下代码也使用了带 break 语句的标签,但是会产生语法错误,因为其 break 语句引用了 block2,但它并未嵌套在 block2 内。
以下代码示例中,在嵌套在循环或带标签块中的函数内使用 break 语句也会产生语法错误,而 break 语句旨在跳出这些循环或带标签块。
| ECMAScript® 2027 Language Specification # sec-break-statement |
启用 JavaScript 以查看此浏览器兼容性表。