绝对!有一个名为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添加到他们的语言中的决定。
对于那些没有立即意识到整件事是在开玩笑的人,请原谅我。<—(保险)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)