【问题标题】:Running javascript standalone engine?运行 javascript 独立引擎?
【发布时间】:2016-02-02 05:00:37
【问题描述】:

我知道这里有个奇怪的问题。

但我想知道是否存在某种独立的 JavaScript 引擎..

基本上我想测试我的 javascript 的运行,而无需加载网页...

也许它不存在?就像某种 ide 一样,我可以直接运行命令而无需启动 IE 等...

我有一个很棒的编辑器,但它不支持它.. 我仍然需要启动 ie / firefxo

我认为存在某种独立的 javascript 引擎,我可以在这里编写我的代码并使调试更容易...然后复制到我的网页。

我知道萤火虫存在,但你不能专门做我问你的事吗?

有什么想法吗?

【问题讨论】:

  • @Artem Barger:我进行了谷歌搜索,结果令人困惑。然后我在 SO 上进行了搜索,发现了这个问题,事实证明这很有帮助。没有帮助的是您的评论。例如,我的 Google 搜索没有在结果的第一页显示 Rhino。也没有说明windows内置的js可以通过cscript调用。如果搜索引擎回答了所有问题,为什么会有这样的网站?拜托,试着做一个更像人的人。
  • @Toddintr - 你介意解释一下你在说什么吗?
  • @Artem Barger:您最初在这里有一条评论,在那里您批评了发布此问题的操作。我的评论是对您最初的评论的回应,该评论已被删除(由谁删除,我不知道)。

标签: javascript ide


【解决方案1】:

查看RhinoSpidermonkey。您可能想要获取ServerJS standard 的实现,例如Narwhal

【讨论】:

  • 谢谢,抱歉耽搁了回复。
【解决方案2】:

至于引擎 - 它实际上是内置在 Windows 本身中的,而 IE 只是将它用于网页。试试看 - 你可以创建一个简单的.js 文件并运行它。实际上,它是 .bat 文件的绝佳替代品。 :) 您也可以cscript.exe(用于控制台)和wscript.exe(用于 Windows 应用程序)运行您的脚本。当您双击 .js 文件时,它实际上是 Windows 内部运行的。

至于调试 - 我不知道。我知道:

  • Visual Studio 支持脚本调试,至少对于浏览器(但可能在与 Windows 脚本主机集成的其他应用程序中);
  • 有一个单独的“脚本调试器”可从 Microsoft 免费下载,但我上次检查它非常糟糕;
  • 上面提到的cscript.exewscipt.exe都有命令行参数,和脚本调试有关,虽然我不知道它们是干什么的。

【讨论】:

  • 另外,您可以使用cscript /nologo 来抑制版本和版权输出。在脚本中,您可以使用WScript.stdout.write 来输出您的结果。
【解决方案3】:

您也可以试用 Google Chrome 的 JavaScript 引擎 V8:
http://code.google.com/p/v8/

【讨论】:

    【解决方案4】:

    Rhino 是完全用 Java 编写的 JavaScript 的开源实现。

    【讨论】:

      【解决方案5】:

      这里的许多人都推荐了 Rhino 或其他服务器端 实现。但是从我读到的内容来看,您想要一些应该模拟浏览器环境的东西。在这方面,我会尝试(这意味着我以前没有使用过这种组合)是Mozilla Rhinoenv.js。虽然我使用 Mozilla Rhino 已经有一段时间了,但对于 env.js,我不能说太多。

      env.js 是浏览器环境的模拟。它最初是由 John Resig 开发的,但 Chris Thatcher 让它看起来像现在一样。在我看来,这看起来很有希望。以前没试过,但我会给它一个机会。

      【讨论】:

        【解决方案6】:

        我最近发现,如果你安装了 Visual Studio,你可以通过调用像 cscript test.js //X 这样的脚本来调试 JScripts,它会弹出 Just In Time 调试器窗口。

        然后,您可以逐行执行脚本,享受真正调试器的所有好处。

        【讨论】:

          【解决方案7】:

          JSC.exe 和命令提示界面允许您在桌面上将 JScript/JavaScript 编译成 .Net 可执行文件。

          JSC [JScript 编译器] 有一个 -?或 -help 函数,它显示所有编译器选项和标志,并且本身是一个独立的可执行文件。将其复制到您选择的文件夹,然后将 cmd.exe 复制到同一文件夹并开始编码。使用 .js 文件扩展名将源代码保存在包含 cmd 和 jsc 可执行文件的文件夹中。是的,jsc.exe 适用于常规 .js 文件,但 JScript.net 教程可以向您展示如何使用按钮和所有 .js 文件构建 GUI!

          通过启动命令行 shell (cmd.exe) 编译您的 .js 文件,在与 jsc.exe 和您的 .js 文件相同的文件夹中,输入 jsc 然后是一个空格,然后是您的 .js 文件的名称 - 点击输入 - 完成。此外,jsc 将调试器错误和警告输出到以 .js 文件中遇到问题的行和字符位置启动它的同一 cmd.exe。您还可以通过键入 jsc、一个空格然后键入 /debug 一个空格和您的 .js 文件名来为您的 .js 文件保存到 .pdb 的调试对象输出。

          • '/debug' = 正斜杠,然后是单词 debug 或...
          • '-debug' = 减号或破折号,然后是单词 debug。

          / 并且 - 在对标志进行相同的管理/读取之前,请使用最适合您的方式,只需确保不要将调试或任何标志放在任何类型的引号中。

          简单易行; jsc.exe 将从 USB 拇指驱动器和闪存卡中运行,唯一的要求是在主机操作系统中安装 .Net 框架。如果您运行的是较新版本的 Windows,无论如何都会预先安装 .Net 框架;转到您的 Windows 操作系统的 Windows 目录/文件夹并搜索 jsc.exe,您可能会得到 jsc.exe 的 .Net 版本,至少适用于 2.0 和 4.0。将您想要的版本复制到您选择的文件夹中,重复该过程以找到 cmd.exe。

          不要剪切和粘贴 jsc.exe 和 cmd.exe - 仅将这些可执行文件复制到您希望从中运行它们的目录。右键单击文件,然后从上下文菜单中单击复制菜单选择选项。右键单击为 jsc.exe 和 cmd.exe 创建的目录,然后单击上下文菜单选择选项粘贴。您也可以单击文件以突出显示它,然后按 Ctrl 键,然后按 C 键将文件复制到剪贴板;单击以突出显示或双击以打开您创建的目录,然后按住 Ctrl 键按 V 键将文件粘贴到您选择的目录中。

          鲜为人知的事实:

            • JScript 是 Microsoft 实施的符合 ECMAScript 规范 5 的 JavaScript,MSDN 有关于它的优秀文档以及当前的 JavaScript。
            • cmd.exe 支持拖放;因此,您可以在命令提示符下拖放 jsc.exe,输入一个空格,然后将您的 .js 文件拖放到上面,然后按回车进行编译和享受。
            • 我不为 Microsoft 工作,但可能应该。

          适用于 Linux 的 Mono .Net 框架可能也能够支持 JScript.Net 应用程序,但我已经有一段时间没有研究这个话题了。 Mono 框架是遵循 CLS(通用语言规范 [generic com])的 .NET 框架的 ECMA 规范的 Linux 兼容 .Net 框架。 Mono 框架支持很大一部分 ECMA 规范,并且在很大程度上与 Microsoft .Net 框架兼容。

          祝你好运。

          【讨论】:

            【解决方案8】:

            我有一个类似的问题,但不太乐观:Is there a Javascript IDE that has nothing to do with a browser?

            我认为最好的答案是 Mozilla Rhino - 尽管出于您的目的,server-side javascript 相关的捆绑包可能符合要求。他们使用的引擎往往是 Rhino 或 Spidermonkey,还有一些其他的随机引擎。

            【讨论】:

              【解决方案9】:

              jslibs 是一个很好的基于 Firefox 的 JavaScript 引擎的独立 JavaScript 运行时。

              【讨论】:

                【解决方案10】:

                使用 Rhino 或 SpiderMonkey,您可以拥有一个独立的 JS 引擎,或者将其包含在您编写的其他应用程序中;但是您将无法测试与文档对象模型 (DOM) 相关的任何内容,例如操作元素和属性或响应事件。

                与 DOM 相关的一切都由浏览器提供,作为 JavaScript 引擎运行的宿主环境。没有浏览器就意味着没有 DOM。

                如果您计划处理的代码完全不依赖于浏览器环境提供的任何内容,那么您可以从查看Rhino Shell 开始。

                编辑:Microsoft 的 JScript 也是一个独立的 COM 组件,您可以在 Windows Script Host 下运行它。该环境中可用的对象模型提供了对 Windows shell 的基本访问级别。

                【讨论】:

                  【解决方案11】:

                  我在 Web Developer tools 和 JSDB 下使用 Firefox 中的 Scratchpad。 还有一个Javascript shells at MDN 的列表。这是我只想快速运行javascript代码sn-ps的时候。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 2013-03-21
                    • 2014-05-11
                    • 2023-03-09
                    • 2013-11-24
                    • 1970-01-01
                    • 2013-05-22
                    • 2020-12-03
                    • 1970-01-01
                    相关资源
                    最近更新 更多