DevOps研发效能
媒体矩阵
开源中国APP
授权协议 MIT
操作系统 跨平台
软件类型 开源软件
开源组织
地区 不详
投 递 者
适用人群 未知
收录时间 2019-07-12

软件简介

QuickJS 是一个轻量且可嵌入的 JavaScript 引擎,它支持 ES2019 规范,包括 ES module、异步生成器以及 proxies。除此之外,还支持可选的数学扩展,例如大整数(BigInt)、大浮点数(BigFloat)和运算符重载。

主要特性如下

  • 轻量且方便嵌入:QuickJS 只包含一些 C 语言文件,没有额外的依赖,运行一个简单的 hello world 只需要 190 KiB 的 x86 代码
  • 拥有启动时间极短的快速解释器:在单核的台式 PC 上,运行 ECMAScript 测试套件的 56000 个测试大约在 100 秒内完成。一个 runtime 实例的完整生命周期在不到 300ms 内完成
  • 几乎完整的 ES2019 支持,包括 ES module、异步生成器和完整的 Annex B 支持(传统的 Web 兼容性)
  • 完全通过了 ECMAScript 测试套件的测试
  • 可将 JavaScript 源码编译为没有外部依赖的可执行文件
  • 基于引用计数的 GC(以减少内存使用并具有确定性行为)
  • 数学扩展:BigInt、BigFloat、运算符重载、bigint mode 和 math mode
  • 使用 Javascript 实现的具有上下文着色功能(contextual colorization)的命令行解释器
  • 包含使用 C 语言库封装的轻量级内置标准库

BTW,QuickJS 的作者是 Fabrice Bellard,知名开源项目 FFMPEG 和 QEMU 都出自他手。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(25) 发布并加入讨论🔥
发表了资讯
2020/03/17 09:29

QuickJS 发布 2020-03-16 更新

QuickJS 发布了 2020-03-16 更新 重新写了std和os库中的错误处理:禁止了std FILE函数中的I/O异常,并在向stderr明确输出异常消息时返回errno值 添加了std.loadFile(), std.strerror(), std.FILE.prototype.tello() 添加了JS_GetRuntimeOpaque(), JS_SetRuntimeOpaque(), JS_NewUint32() Unicode更新到13.0.0 其他错误修复 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。...

8
8
发表了资讯
2019/09/19 08:30

QuickJS 发布 2019-09-18 更新

QuickJS 发布了 2019-09-18 更新 增加os.exec以及其他系统调用 导出的JS_ValueToAtom() qjsc: 增加 'qjsc_' 前缀来生成 C identifiers 增加 cross-compilation支持 bug修复 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学扩展,例如大整数 (BigInt),大浮点数 (BigFloat) 以及运算符重载。 主要功能 轻量而且易于嵌入:只需几个C文件,没有外部依赖,一个...

4
6
发表了资讯
2019/09/02 06:44

QuickJS 发布 2019-09-01 更新

QuickJS 发布了 2019-09-01 更新 增加globalThis 记录了JS_EVAL_FLAG_COMPILE_ONLY 增加import.meta.url 和 import.meta.main 增加 'debugger' 声明 bug修复 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学扩展,例如大整数 (BigInt),大浮点数 (BigFloat) 以及运算符重载。 主要功能 轻量而且易于嵌入:只需几个C文件,没有外部依赖,一个 x86 下的简单...

4
4
发表了资讯
2019/08/18 20:13

QuickJS 发布 2019-08-18 更新

QuickJS 发布了 2019-08-18 更新 增加os.realpath, os.getcwd, os.mkdir, os.stat, os.lstat, os.readlink, os.readdir, os.utimes, std.popen 模块自动检测 增加import.meta bug修复 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学扩展,例如大整数 (BigInt),大浮点数 (BigFloat) 以及运算符重载。 主要功能 轻量而且易于嵌入:只需几个C文件,没有外部...

5
9
发表了资讯
2019/08/10 20:33

QuickJS 发布 2019-08-10 更新

QuickJS 发布了 2019-08-10 更新 TC39建议:增加了公共类字段、私有字段、方法和访问器; 更改了JS_ToCStringLen()属性 qjsc:“-”在模块名称和模块有同样的文件名 增加std.urlGet 导出JS_GetOwnPropertyNames()和JS_GetOwnProperty() 导出一些C的大整数函数 在run-test262中添加了对eshost的支持 bug修复 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学...

4
8
发表了资讯
2019/07/30 21:42

JavaScript:ES2019 中的新功能

作为最流行的编程语言之一,也是Web主要开发语言,JavaScript不断发展,每次迭代都会获得一些新的内在变化。让我们看看ES2019的一些新提议的功能,这些功能很快就可能出现在我们日常编码中: Array.flat() 您现在可以将嵌套数组按照指定的深度递归展开。默认值为1,如果要全部展开,可以使用Infinity。这个方法不会修改原始数组,但会创建一个新数组: const arr1 = [1, 2, [3, 4]]; arr1.flat(); // [1, 2, 3, 4] const ...

16
30
发表了资讯
2019/07/29 10:27

QuickJS 发布 2019-07-28 更新

QuickJS 发布了 2019-07-28 更新 增加动态import 增加Promise.allSettled 增加String.prototype.matchAll 增加Object.fromEntries 减少await中ticks的数量 增加在Atomics中BigInt的支持 可导出的JS_NewPromiseCapability() misc异步函数和异步生成器修复 默认情况下启用hashbang支持 QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学扩展,例如大整数 (Big...

2
9
发表了资讯
2019/07/21 22:36

QuickJS 发布 2019-07-21 更新

QuickJS 发布了 2019-07-21 更新 更新记录: 更新test262测试 更新到Unicode12.1.0版本 修复了qjsc中缺少的日期对象 修复了多上下文创建 misc ES2020相关修复 bignum扩展中简化power和division操作 修复了几个崩溃条件 来自Fabrice Bellard的问候 完整更新请查看邮件列表:https://www.freelists.org/post/quickjs-devel/New-release,77 QuickJS 是一个轻量且可嵌入的 JavaScript 引擎,它支持 ES2019 规范,包括 ES module、异...

7
6
发表了资讯
2019/07/14 21:41

Fabrice Bellard 和他的 QuickJS JavaScript 引擎

周二,FFmpeg和QEMU的创建者Fabrice Bellard以及C专家Charlie Gordon宣布QuickJS首次公开发布。在MIT许可下发布,它是一个“小而完整的JavaScript引擎”,支持最新的ES2019语言规范。 QuickJS JavaScript引擎中的功能 小而易于嵌入:引擎由几个C文件组成,并且没有任何外部依赖性。 快速解释器:解释器通过在100秒内从ECMAScript Test Suite1运行56,000次测试,并且在单核CPU上运行,显示出令人印象深刻的速度。运行时实例在不到...

12
22
发表了资讯
2019/07/13 01:13

QuickJS,一个小型并且可嵌入的 Javascript 引擎

QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。 它可选支持数学扩展,例如大整数 (BigInt),大浮点数 (BigFloat) 以及运算符重载。 主要功能 轻量而且易于嵌入:只需几个C文件,没有外部依赖,一个 x86 下的简单的“hello world”程序只要 180 KiB。 具有极低启动时间的快速解释器: 在一台单核的台式 PC 上,大约在 100 秒内运行 ECMAScript 测试套件 56000 次。运行时...

17
40
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
25 评论
198 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部