是否有用Python编写的JavaScript(ECMAScript)实现?

时间:2011-09-17 00:25:36

标签: javascript python interpreter vm-implementation

是否有用 Python编写的JavaScript(ECMAScript)实现?即使它的实现非常缓慢也没关系。

6 个答案:

答案 0 :(得分:9)

似乎不再处于积极发展状态,但您可以查看pynarcissushttp://code.google.com/p/pynarcissus/source/browse/trunk/jsparser.py

似乎也可以使用绑定到V8(Google Chromium中的JavaScript解释器),http://www.advogato.org/article/985.html

答案 1 :(得分:7)

有一个用未知的完整性级别编写,用RPython编写(Python的一个子集,也就是说,它以普通的Python运行):https://bitbucket.org/pypy/lang-js/overview

答案 2 :(得分:3)

您可能需要查看pydermonkeypython-spidermonkey,我相信这两者都是Mozilla javascript解释器的python实现。

答案 3 :(得分:2)

我建议您只需坚持本地开发框中的node.js,将CoffeeScript文件转换为JavaScript,然后使用您的应用部署已翻译的脚本。

我知道你要避免在服务器上安装node.js,这一切都很公平。使用Python调用JavaScript来翻译CoffeeScript来翻译CoffeeScript似乎对我来说比它的价值更麻烦。

答案 4 :(得分:1)

我创建了Jispy以在Python中嵌入JS。

来自文档:

  

Python中的JavaScript解释器

     

Jispy是一个严格的JavaScript子集的解释器,被称为LittleJ (LJ)。它采用递归下降进行解析,并且非常容易扩展。

     

专为嵌入JavaScript

而构建      

Jispy最初的愿景是无缝地允许在Python项目中嵌入JavaScript程序。默认情况下,它不会公开主机的文件系统或任何其他敏感元素。对无限循环和无限递归进行了一些检查,以解决可能的恶意代码。

它带有一个交互式控制台,因此您可以立即启动并运行。

希望这有帮助。

答案 5 :(得分:0)

您听说过PyV8吗?它是谷歌V8 JavaScript引擎的Python包装器。这可能就是你要找的东西。