在快速动态类型语言方面,我开始喜欢使用JavaScript,特别是因为在网页项目中它使用与Actionscript(flash)相同的语法。
对于Shell脚本编写来说,它是一种理想的语言,可以更轻松地从站点的前端和后端移动代码,而且比Python的语法要少一些奇怪的符号。
是否有一个易于安装的优秀的JavaScript解释器(我知道有基于Java的解释器,但那意味着要安装所有的Java相关内容才能使用)?
在快速动态类型语言方面,我开始喜欢使用JavaScript,特别是因为在网页项目中它使用与Actionscript(flash)相同的语法。
对于Shell脚本编写来说,它是一种理想的语言,可以更轻松地从站点的前端和后端移动代码,而且比Python的语法要少一些奇怪的符号。
是否有一个易于安装的优秀的JavaScript解释器(我知道有基于Java的解释器,但那意味着要安装所有的Java相关内容才能使用)?
我个人使用SpiderMonkey,但这里有一个广泛的ECMAScript shells列表
Ubuntu上安装和使用SpiderMonkey的示例:
$ sudo apt-get install spidermonkey
$ js myfile.js
output
$ js
js> var f = function(){};
js> f();
当然,在Windows中,JavaScript解释器已经随着操作系统一起安装了。
只需在任何.js文件上运行cscript
或wscript
即可。
目前有四个主要的javascript解释器,它们分别是V8、Squirrelfish、Spidermonkey和Rhino。我认为比性能更重要的是它如何与现有基础设施集成,我猜Rhino因其与Java的桥接而胜出。
它与Javascript有些相似,但更加“正交”(更接近功能根源)。
对“纯”编程理论的重视使其变得非常小巧和快速。它是最快的脚本语言,并且JIT运行比开始出现的新JavaScript JIT要快得多。
此外,由于最初将其视为扩展语言,因此它具有非常好的清晰接口到C,使得非常容易创建绑定到任何您想要访问的C库。
Google的V8可以用作独立解释器。使用scons sample=shell
进行配置将构建一个名为shell
的可执行文件,可以这样调用:./shell file.js
。
提醒一下,现代 Windows 平台已经内置了一个 JavaScript 引擎。你需要使用 JScript,但它已经足够接近了。同样的环境也允许使用 VBScript。要运行程序,你可以执行类似这样的命令:
cscript foo.js
如果你期望与基本的 JS 对象一样灵活,那么 Windows 系统 API 有点奇怪和令人沮丧,但是如果你能处理 MSDN 页面并查看所有 VBScript 示例的详尽文档,它们确实非常全面。
不确定 Linux/Mac 上是否有可用的 js shell。
出于安全考虑,JavaScript 的设计并未提供文件访问权限。因此,作为一种脚本语言,它的功能有些受限。
但是,如果你真的想要实现文件访问,Spider Monkey 是你最好的选择。以下是一个教程:
http://developer.mozilla.org/en/Introduction_to_the_JavaScript_shell
brew install spidermonkey
命令。非常好用。 - prairiedogg