为什么标签存在?

P.B*_*key 6 javascript

为什么javascript中存在标签?

var i = 0;

usefulLabel://why do I exist?
while(i <= 10){
    document.writeln(i);
    i++;
    if(i > 5)
        break;// usefulLabel;
}
Run Code Online (Sandbox Code Playgroud)

上面的代码似乎根本不需要标签(它可以使用或不使用注释标签名称).考虑到道格拉斯·克罗克福德并没有完全谴责他们:

标签

声明标签是可选的.只应将这些语句标记为:while,do,for,switch.

它们被认为是一种很好的实践方法吗?对我来说,这些东西看起来与某些语言中臭名昭着的goto语句非常接近.

SLa*_*aks 8

如果要从嵌套循环中突破最外层循环,则需要一个标签.
如果你最终需要它,你应该考虑重构代码以使其更简单.(虽然这并不总是可行的)