用JavaScript解释器替换Python。

21

在快速动态类型语言方面,我开始喜欢使用JavaScript,特别是因为在网页项目中它使用与Actionscript(flash)相同的语法。

对于Shell脚本编写来说,它是一种理想的语言,可以更轻松地从站点的前端和后端移动代码,而且比Python的语法要少一些奇怪的符号。

是否有一个易于安装的优秀的JavaScript解释器(我知道有基于Java的解释器,但那意味着要安装所有的Java相关内容才能使用)?

12个回答

13

我个人使用SpiderMonkey,但这里有一个广泛的ECMAScript shells列表

Ubuntu上安装和使用SpiderMonkey的示例:

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

3
在已经安装Homebrew的OS X上,执行brew install spidermonkey命令。非常好用。 - prairiedogg
3
Ubuntu Lucid 10.04中不包含SpiderMonkey :(. - Grzegorz Gierlik
@Grzegorz Gierlik:通过“Lanuchpad” PPA,也适用于natty:在Ubuntu 11.04上获取spidermonkey js的最佳方法? - sdaau
链接(burstproject.org)无效,似乎已经恢复到可怕的Go Daddy链接/广告墙。 - John Carter
有人已经保存了该页面的副本。我正在替换那个链接。它可能不是最新的,但总比没有好。 - valse-triste

10

当然,在Windows中,JavaScript解释器已经随着操作系统一起安装了。

只需在任何.js文件上运行cscriptwscript即可。


很遗憾,我认为这种方法不提供交互式的shell会话,只能运行JavaScript文件。 - David

7

目前有四个主要的javascript解释器,它们分别是V8、Squirrelfish、Spidermonkey和Rhino。我认为比性能更重要的是它如何与现有基础设施集成,我猜Rhino因其与Java的桥接而胜出。


1
Rhino 启动太慢了。我尝试在我的机器上使用 JSList 和 VIM,但 Rhino 太慢了 :(。 - Grzegorz Gierlik

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

FYI,现在jslibs使用的是Firefox最新的JavaScript引擎tracemonkey。 - Franck Freiburger

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

它与Javascript有些相似,但更加“正交”(更接近功能根源)。

对“纯”编程理论的重视使其变得非常小巧和快速。它是最快的脚本语言,并且JIT运行比开始出现的新JavaScript JIT要快得多。

此外,由于最初将其视为扩展语言,因此它具有非常好的清晰接口到C,使得非常容易创建绑定到任何您想要访问的C库。


1

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


1

你需要一些服务器端的JavaScript解释器。请查看以下博客文章。像Rhino这样的工具可能对你有用。


1

你可以尝试玩弄SquirrelFishv8,两者都可以在命令行上运行。


1

提醒一下,现代 Windows 平台已经内置了一个 JavaScript 引擎。你需要使用 JScript,但它已经足够接近了。同样的环境也允许使用 VBScript。要运行程序,你可以执行类似这样的命令:

cscript foo.js

如果你期望与基本的 JS 对象一样灵活,那么 Windows 系统 API 有点奇怪和令人沮丧,但是如果你能处理 MSDN 页面并查看所有 VBScript 示例的详尽文档,它们确实非常全面。

不确定 Linux/Mac 上是否有可用的 js shell。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接