如何在Javascript中使用goto?

我有一些绝对必须使用实现的代码goto。例如,我要编写这样的程序:

start:

alert("RINSE");

alert("LATHER");

repeat: goto start

有没有办法用Javascript做到这一点?

回答:

绝对!有一个名为Summer of Goto的项目,它使您可以最大程度地使用JavaScript,并将彻底改变您编写代码的方式。

这个JavaScript预处理工具可让您创建标签,然后使用以下语法转到标签:

[lbl] <label-name>

goto <label-name>

例如,问题中的示例可以编写如下:

[lbl] start:

alert("LATHER");

alert("RINSE");

[lbl] repeat: goto start;

请注意,您不仅限于无穷无尽的LATHER``RINSE重复循环这样的简单程序,它所提供的可能性goto是无限的,您甚至可以Hello,world!向JavaScript控制台发送一条消息538次,如下所示:

var i = 0;

[lbl] start:

console.log("Hello, world!");

i++;

if(i < 538) goto start;

您可以阅读有关goto的实现方式的更多信息,但基本上,它会执行一些JavaScript预处理,这利用了您可以使用带标签的whileloop模拟goto的事实。因此,当您撰写“你好,世界!”

上面的程序,它被翻译成这样的东西:

var i = 0;

start: while(true) {

console.log("Hello, world!");

i++;

if(i < 538) continue start;

break;

}

此预处理过程存在一些限制,因为while循环无法跨越多个功能或块。不过,这没什么大不了的-

我相信能够利用gotoJavaScript的好处绝对会让您不知所措。

PS对于任何想知道的人(到目前为止共有零个人),SummerofGoto是PaulIrish推广的一个术语,同时讨论了该脚本以及PHP决定将goto添加到他们的语言中的决定。

对于那些没有立即意识到整件事是在开玩笑的人,请原谅我。<—(保险)。

以上是 如何在Javascript中使用goto? 的全部内容, 来源链接: utcz.com/qa/435991.html

回到顶部