Javascript:使用"标签"

Javascript: weird syntax error when using "label"

本文关键字:quot 标签 使用 Javascript      更新时间:2023-09-26

此代码段

abc:
var i=0;
for (; i < 10; ++i)
    if (i == 8) break abc;

有运行时异常,称

SyntaxError: Undefined label 'abc'

如果我删除的行

var i=0;

那没关系。

这对我来说很奇怪。javascript是否需要任何标签,如果由"break"/"continue"使用,则定义仅对其后面的代码块可用,否则将无法访问?谢谢

来自MDN:

break语句需要嵌套在引用的标签中。

所以,是的。

您的标签需要直接位于循环之前:

var i=0;
abc:
for (; i < 10; ++i)
    if (i == 8) break abc;