Get to know MDN better
此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
continue 声明终止当前循环或标记循环的当前迭代中的语句执行,并在下一次迭代时继续执行循环。
标识标签关联的语句
与 break 语句的区别在于,continue 并不会完全终止循环的执行,而是:
continue 语句可以包含一个可选的标签以控制程序跳转到指定循环的下一次迭代,而非当前循环。这种情况要求 continue 语句在被标识的语句内部。
在脚本、模块、函数体或静态初始块的顶层不能使用 continue 语句(无论是否带有后续标签),即使该函数或类进一步包含在循环中也不行。
下述例子展示了一个在 i 为 3 时执行 continue 语句的 while 循环。因此,n 的值在几次迭代后分别为 1、3、7 和 12。
在下面的例子中,被标记为 checkiandj 的语句包含一个被标记为 checkj 的语句。当遇到 continue 语句时,程序回到 checkj 语句的开始继续执行。每次遇到 continue 时,再次执行 checkj,直到条件判断返回 false。之后完成 checkiandj 语句剩下的部分。
但如果 continue 的标号被改为 checkiandj ,那程序将会从 checkiandj 语句的开始继续运行。
输出:
i:0 // checkj 开始 j:8 7 是奇数。 j:7 j:6 5 是奇数。 j:5 // checkj 结束 i = 1 j = 4 i:1 i = 2 j = 4 i:2 i = 3 j = 4 i:3 i = 4 j = 4continue 不能在跨越函数边界的循环中使用。
引用标签时,标签语句必须包含 continue 语句。
标记的语句必须是一个循环。
| ECMAScript® 2027 Language Specification # sec-continue-statement |
启用 JavaScript 以查看此浏览器兼容性表。