QuickJS是一个小型可嵌入的Javascript引擎。它支持 ES2019规范, 包括模块,异步生成器和代理。
它可选地支持数学扩展,例如大整数(BigInt),大浮点数(BigFloat)和运算符重载。
主要特点:
- 小巧且易于嵌入:只需几个C文件,无外部依赖,190 KiB的x86代码用于简单的hello world 程序。
- 具有极低启动时间的快速解释器:在台式PC的单核上,在大约100秒内运行ECMAScript测试套件的56000次测试。运行时实例的完整生命周期在不到300微秒的时间内完成。
- 几乎完整的ES2019 支持包括模块,异步和完整的附件B支持(传统的Web兼容性)。
- 通过100%的ECMAScript测试套件。
- 可以将Javascript源编译为没有外部依赖的可执行文件。
- 使用引用计数(以减少内存使用并具有确定性行为)的垃圾收集与循环删除。
- 数学扩展:BigInt,BigFloat,运算符重载,bigint模式,数学模式。
- 在Javascript中实现的具有上下文着色的命令行解释器。
- 带有C库包装器的小型内置标准库。
以上转截的,以下为我自已写的:
qjs 执行js
qjsc 构建js为可执行文件
qjsbn 执行js,具有数学扩展的相应解释器和编译器
qjsnbc 构建js为可执行文件,具有数学扩展的相应解释器和编译器
例子:
运行JS
qjs examples/hello.js
> Hello World
生成可执行文件
qjsc -o hello examples/hello.js
./hello
> Hello World
官方网站:QuickJS Javascript Engine https://bellard.org/quickjs/
开源:GitHub - quickjs-zh/QuickJS https://github.com/quickjs-zh/QuickJS
QuickJS,一个小型并且可嵌入的 Javascript 引擎 - OSCHINA
https://www.oschina.net/news/108193/quickjs-released
尝试Quickjs | 帕奇的手札 https://uxfeel.com/2019/07/12/20190712-try-quickjs/