bochs win7镜像完整版


bochs win7镜像完整版  

大家好,我是“高级前端进阶”,今天再次和大家分享前端技术的新鲜事。今天我们要关注的是QuickJS,这是一个非常引人注目的小型且可嵌入的JavaScript引擎。接下来让我们一起深入了解QuickJS的相关内容。

我们来了解一下什么是QuickJS。QuickJS是由Fabrice Bellard和C语言专家Charlie Gordon在2019年宣布开源的一个项目。它在MIT许可下发布,被描述为一个“小而完整的JavaScript引擎”。开发者还可以使用Emscripten将QuickJS编译成WebAssembly,从而实现在浏览器中运行。

QuickJS支持ES2020规范,包括模块、异步生成器、Proxy和BigInt等。开发者可以根据需要选择是否支持数学扩展,如大十进制浮点数、大二进制浮点数和运算符重载等。

那么,为什么选择QuickJS呢?主要原因之一是它的性能优势。在bench-v8测试中,QuickJs的性能表现令人瞩目,它领先于其他引擎如XS引擎、DukTape、JerryScript和MuJS。

除了性能优势外,QuickJS还有以下特点:

1. 小巧且易于嵌入:只有几个C文件,没有外部依赖。一个简单的hello world程序编译为x86后只有210KB。

2. 解释器启动时间短:在台式PC的单核上运行ECMAScript测试套的75000个测试大约需要100秒。

3. 支持完整的ES2020特性,包括模块、异步生成器和Annex B支持。

4. 选择ES2020特性时,几乎100%通过ECMAScript Test Suite测试。

5. 可以在没有外部依赖的情况下将Javascript源代码编译为可执行文件。

6. 使用引用计数和循环删除的垃圾收集模式。

7. 支持数学扩展,如BigDecimal、BigFloat、运算符重载等。

接下来是安装和使用QuickJS的步骤。你需要下载QuickJS的源代码和extras。官方提供了GitHub镜像和其他下载渠道。解压后,你可以使用make命令开始编译。编译完成后,就可以开始运行你的代码了。

为了演示,我们创建一个名为quick.js的文件,在其中写入一些简单的JavaScript代码。然后,我们可以使用qjs命令行解释器来运行这些代码。还有qjsc编译器可以用来生成不需要外部依赖的可执行文件。

除了在自己的应用程序中嵌入QuickJS引擎外,项目还提供了三个适合个人使用的C库:freegexp、libunicode和libbf。

我们还可以直接在NumCalc这样的平台上运行QuickJS的示例代码。这是一个基于QuickJS的轻量级科学计算器,具有许多强大的功能。

本文主要是向大家介绍QuickJS这个小型且可嵌入的JavaScript引擎。由于篇幅有限,还有很多深入的内容没有展开。有兴趣的朋友可以参考文末的参考资料,那里有大量的优秀文档供学习。希望这篇文章能帮助大家更好地了解QuickJS并激发大家的学习热情!

参考资料:

- /quickjs/

- hub./introducing-quickjs-a-small-and-easily-embeddable-javascript-engine/

- /bellard/quickjs

- /(在线运行示例)。

  bochs win7镜像完整版