当前位置: 首页 > 面试题库 >

如何在Javascript中使用goto?

邵献
2023-03-14
问题内容

我有一些绝对必须使用实现的代码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。 而且还可以通过JavaScript构建对象并在其上调用方法。 有什么框架吗? 问题答案: Rhino 是您想要的。 Rhino是完全用Java编写的JavaScript的开源实现。通常将其嵌入Java应用程序中,以向最终用户提供脚本。 更新:现在,jdk8提供了Nashorn,它是Java性能更好的

  • 我想将一个元素返回到链中的第一个元素,只要我有一个像这样的代码 然后我想激活一个叫active的类,只有在第一个元素和其他元素中将没有叫active的类,下面的元素将向上移动以替换第一个元素,而第一个元素将返回链中。 这段使用jQuery的代码如下所示 null null 这是我在寻找解决方案时生成的代码 null null

  • 问题内容: 我不知道如何在JavaScript中使用多个ID。单个ID和getElementById没问题,但是一旦我将ID更改为class并尝试使用getElementsByClassName,该函数就会停止工作。我已经读了约100条关于该主题的文章;仍然没有找到答案,所以我希望这里的人知道如何使getElementsByClassName工作。 这是我用于测试的一些简单代码: 问题答案: 返回

  • 问题内容: 我想使用Java将JavaScript与WebDriver(Selenium 2)一起使用。 我遵循了一些指南,第一行有一条指令以如下方式运行: 我的问题:上述命令将从哪个文件夹/位置运行/执行? 问题答案: 基于您先前的问题,我想您想从Java的Java运行JavaScript代码段。如果我错了,请纠正我。 该实际上是“公正”另一语言绑定(您可以用Java编写,C#,红宝石,Pyth

  • 问题内容: 首先,我是Javascript领域的新手。我有一个JSON文件,例如: 我一直在做很多关于如何将此文件重新带回脚本中的研究,只是找到了将字符串编码为JSON文件的方法。基本上,我想通过javascript读取此文件,例如…(我知道这不是您编码的方式) 有人可以给我明确的指示,说明如何执行此操作。记住,我是一个新手,需要具体说明,因为我不符合javascript行话。 问题答案: 首先,

  • 在我的控制器中 我也试过了 在我看来 我也试过了 但它在下面回答错误,我认为问题是关于双引号。在javascript中使用laravel json响应的正确方法是什么 SyntaxError:无效的属性id var所有城市=[{