运行javascript独立引擎?

时间:2009-07-02 17:12:29

标签: javascript ide

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

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

基本上我想测试运行我的javascript而不必加载网页......

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

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

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

我知道萤火虫存在,但是你不能专门做我要求的cna你吗?

有什么想法吗?

11 个答案:

答案 0 :(得分:11)

结帐RhinoSpidermonkey。你可能想要抓住ServerJS standard的实现,就像你在Narwhal时一样。

答案 1 :(得分:6)

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

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

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

答案 2 :(得分:5)

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

答案 3 :(得分:3)

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

答案 4 :(得分:3)

这里有很多人推荐Rhino或其他服务器端实现。但是根据我的阅读,你想要一些应该模仿浏览器环境的东西。在这方面,我尝试的(这意味着我以前没有使用过这种组合)是Mozilla Rhinoenv.js。虽然我一直在使用Mozilla Rhino很长一段时间,但我不能对env.js说太多。

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

答案 5 :(得分:2)

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

然后,您可以逐行完成脚本,并获得真正调试器的所有好处。

答案 6 :(得分:1)

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

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

答案 7 :(得分:1)

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

答案 8 :(得分:1)

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

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

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

  • '/ debug'=正斜杠,然后单词debug或...
  • ' - debug'=减号或短划线字符,然后单词debug。

/和 - 在以相同方式管理/读取标志之前,请使用最适合您的标签,确保不要将调试或任何标志放入任何类型的引号中。

容易羞怯; jsc.exe将从usb拇指驱动器和闪存卡中运行,唯一的要求是.Net Framework安装在主机操作系统中。如果您运行的是较新版本的Windows,则无论如何都会预先安装.Net框架;转到Windows操作系统的Windows目录/文件夹并搜索jsc.exe,您可能会获得最低限度为2.0和4.0的.Net版本的jsc.exe。将所需的版本复制到所选文件夹,重复该过程以查找cmd.exe。

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

鲜为人知的事实:

    • JScript是Microsoft的符合ECMAScript规范5的JavaScript的实现,MSDN上有关于它的优秀文档以及当前的JavaScript。
    • cmd.exe支持拖放;所以,你可以在命令提示符下拖放jsc.exe,键入一个空格然后将你的.js文件拖放到它上面,按回车键进行编译和享受。
    • 我不为微软工作,但可能应该。
  1. Linux的Mono .Net Framework也可以支持JScript.Net应用程序,但是我已经有一段时间没有研究过这个主题了。 Mono Framework是一个Linux兼容的.Net Framework,遵循CLS(通用语言规范[通用com])之后的.NET Framework的ECMA规范。 Mono Framework支持ECMA规范的很大一部分,并且与Microsoft .Net Framework很大程度上兼容。

    有一个好的。

答案 9 :(得分:0)

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

与DOM有关的所有内容都由浏览器提供,作为JavaScript引擎运行的主机环境。没有浏览器意味着没有DOM。

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

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

答案 10 :(得分:0)

我正在使用Web开发人员工具和JSDB下的Firefox中的Scratchpad。 还有一个Javascript shells at MDN列表。这是我想快速运行javascript代码片段的时候。