C 语言中的 ECMAScript-262 实现
ECMAScript-262 implementation in C?
可能的重复:微小的javascript实现?
我四处寻找Javascript的C实现,但我找不到。我需要这个超便携的应用程序,该应用程序将在没有C++编译器的平台上运行。
以下是我的要求:
- ANSI C(如果可能,兼容 C89)
- 最少的依赖关系
- 可嵌入(非独立)
- 开源(GPL v2兼容)
我不在乎速度,但正确性是一个问题。我希望它支持 ECMAScript-262 v5,但 v3 现在已经足够好了。
这样的东西存在吗?如果没有,是否有任何实现相对简单的移植?
DMDScript 是我发现的最简单的,所以我最终可能会移植它。显然没有参考实现,所以这可能是最好的方法。
注意:
我还发现了tiny-js,它本来是小而简单的,但它似乎不符合标准。它正在积极开发,似乎...
Spidermonkey 1.8.0 RC1 和以前的版本都是 C 语言。你可以使用它。
他们在截至 2013 年 2 月 11 日的最新版本中引入了 C++ 1.8.5 版本
SpiderMonkey wiki 声称它是 C/C++,但是,从查看源代码包来看,它实际上是纯 C。
官方下载链接 http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz
如果结果不是纯C,请尝试旧版本。他们的FTP(http://ftp.mozilla.org/pub/mozilla.org/js/)目前托管蜘蛛猴1.8.5下降到1.4,Rhino 1.7下降到1.4。
Spidermonkey API的文档似乎也很好。
你试过 http://www.duktape.org/吗?我已经环顾四周一段时间了,这个只是让我眨了眨眼。我会测试它,看看它是如何进行的,但首先,看起来很有希望
- 在哪里可以学习ECMAScript标准中尚未包含的JavaScript功能
- 使用Google闭包编译器包含一个Ecmascript 6类
- 以ECMAScript 5及更高版本为目标时,八进制文字不可用
- ES6 (ECMAScript 2015) 模块:导入索引.js
- 将ECMAScript 6析构函数赋值(ES2015)重构为旧版本的javascript
- ECMAScript(ECMA-262 5.1)中“引用”的“基值”是什么
- 当浏览器直接支持基于ECMAScript 6的javascript时,Microsoft Typescript会过时吗
- 编写在浏览器和node.js中运行的模块化ECMAScript
- ECMAScript 6的哪些特性意味着严格模式
- ECMAScript 2015(ECMAScript6)是否具有类初始值设定项
- 地图如何在 Ecmascript 6 中使用对象键工作
- 我可以在 Adobe Animate CC 中使用哪个 ECMAScript 版本
- 将“this”传递给类 ECMASCRIPT 6 中的回调
- Ecmascript 6 syntax?
- 在ECMAScript 5之后重新扩展本机原型
- 返回对象的ECMAScript 6箭头函数
- 在Ecmascript 5.1中,哪里提到if语句中没有左大括号是可以接受的
- 我应该使用哪个ECMA-262 (ECMAScript/JavaScript)引用
- ECMAScript 262下setInterval()和setTimeout()的实现
- C 语言中的 ECMAScript-262 实现