【问题标题】:Javascript interpreter to replace Python替换 Python 的 Javascript 解释器
【发布时间】:2010-09-11 20:16:19
【问题描述】:

在快速动态类型语言方面,我真的开始喜欢 Javascript,因为我在 Web 项目中经常使用它,尤其是因为它使用与 Actionscript (flash) 相同的语法。

这将是一种理想的 shell 脚本语言,可以更轻松地从站点的前端和后端移动代码,并且减少 python 的奇怪语法。

有没有一个好的、易于安装的 javascript 解释器(我知道有一个基于 java 的解释器,但这意味着安装所有要使用的 java 东西),

【问题讨论】:

    标签: javascript shell scripting


    【解决方案1】:

    我个人使用 SpiderMonkey,但这里有大量 ECMAScript shells 列表

    在 Ubuntu 上安装和使用示例 spidermonkey:

    $ sudo apt-get install spidermonkey
    $ js myfile.js
    output
    $ js
    js> var f = function(){};
    js> f();
    

    【讨论】:

    • brew install spidermonkey 在 OS X 上安装了自制软件。喜欢它。
    • spidermonkey 不包含在 Ubuntu Lucid 10.04 中 :(.
    • @Grzegorz Gierlik:通过“Lanuchpad”PPA,也适用于 natty:Best way to get spidermonkey js on Ubuntu 11.04?
    • 链接 (burstproject.org) 处于非活动状态,似乎已恢复为可怕的 Go Daddy 链接/广告墙。
    • 其他人已保存该页面的副本。我正在替换该链接。它可能不会是最新的,但有一些东西。
    【解决方案2】:

    当然,在 Windows 中,JavaScript 解释器是随操作系统一起提供的。

    只需对任何 .js 文件运行 cscriptwscript

    【讨论】:

    • 太糟糕了,我认为这种方法不提供交互式 shell 会话,只能运行 javascript 文件。
    【解决方案3】:

    目前有四种大型 javascript 解释器。 V8、松鼠鱼、蜘蛛猴和犀牛。我认为比性能更重要的是它与现有基础设施的集成程度,我猜 Rhino 凭借其与 Java 的桥梁在这里获胜。

    【讨论】:

    • Rhino 启动太慢了。我尝试将 JSList 与 VIM 一起使用,但在我的机器上 rhino 太慢了 :(.
    【解决方案4】:

    试试jslibs,这是一个专注于脚本的独立 JS 运行时和一组使用 SpiderMonkey(Gecko JS 引擎)的库。

    【讨论】:

    • 仅供参考,现在 jslibs 使用了 firefox 最新的 JavaScript 引擎 tracemonkey。
    【解决方案5】:

    在“易于翻译”主题上,还有Lua

    它有点类似于 Javascript,但更“正交”(更接近函数根)。

    对“纯”编程理论的重定位使它变得非常小而快。它是最快的脚本语言,JIT 围绕着新出现的 JavaScript JIT 运行。

    此外,由于它最初被认为是一种扩展语言,它有一个非常漂亮和干净的 C 接口,可以很容易地创建与您可能想要访问的任何 C 库的绑定。

    【讨论】:

      【解决方案6】:

      Google 的V8 可以用作独立的解释器。使用scons sample=shell 进行配置将构建一个名为shell 的可执行文件,可以这样调用:./shell file.js

      【讨论】:

        【解决方案7】:

        您需要一些服务器端 JavaScript 解释器。查看以下blog postRhino 之类的内容可能对您有用。

        【讨论】:

          【解决方案8】:

          您可以尝试使用SquirrelFishv8,两者都应该可以在命令行上运行。

          【讨论】:

            【解决方案9】:

            仅供参考,现代 Windows 平台上已经有一个内置的。您需要使用 JScript,但它已经足够接近了。相同的环境也允许使用 VBScript。要运行程序,您可以执行以下操作:

            cscript foo.js

            如果您期望与基本 JS 对象具有相同的灵活性,Windows 系统 API 会有点奇怪和令人沮丧,但如果您能够处理挖掘 MSDN 页面并查看 VBScript 中的所有示例,它们确实有完整的文档。

            不确定在 js shell 方面可用于 Linux/Mac 的内容。

            【讨论】:

              【解决方案10】:

              好吧,出于安全原因,javascript 没有被设计为提供文件访问权限。所以作为一种脚本语言,它有点局限。

              但是,如果你真的想,蜘蛛猴是你最好的选择。这是一个教程:

              http://developer.mozilla.org/en/Introduction_to_the_JavaScript_shell

              【讨论】:

                【解决方案11】:

                Node.JS。这很棒。有很多模块。您可以使用 Node 编写所有文件脚本。

                【讨论】:

                  【解决方案12】:

                  在我这些年里,我发现大多数 Javascript 开发人员发现迁移到 PHP 很容易,反之亦然 - 这不是您问题的直接答案,尽管如果您使用 ActionScript 和 JavaScript,那么您最好坚持使用 PHP 之类的东西(如果您不愿意迁移到 Java,并坚持使用 ECMA 基础)

                  【讨论】:

                    猜你喜欢
                    • 2011-04-12
                    • 2017-08-04
                    • 1970-01-01
                    • 2011-09-21
                    • 2012-06-07
                    • 1970-01-01
                    • 2012-05-27
                    • 2021-11-29
                    • 2023-03-29
                    相关资源
                    最近更新 更多