为WebAssembly增加关键特性 谷歌发布V8 引擎V7.0和V7.1 JavaScript

为WebAssembly增加关键特性 谷歌发布V8 引擎V7.0和V7.1 JavaScript

谷歌 V8 JavaScript 引擎的最新和版本谷歌发布 V8 JavaScript 引擎的 V7.0 和 V7.1 版本,为 WebAssembly 增加关键特性,并引入一些语言改进。

Version 7.0 和 7.1 改进了对嵌入式内置程序的支持,通过在多个 V8 隔离程序之间共享生成的代码来节省内存。Version 7.0 最初在版本 6.9 中针对 x64 平台发布,除 ia32 之外,它为所有支持平台增加了支持。Version 7.1 通过在二进制文件中嵌入字节码处理程序来完成这项工作。

WebAssembly 在这些版本中获得了关键的改进。Version 7.0 添加了一个WebAssembly Threads的早期预览版,它是由一个特性标记:chrome://flags/ enable- WebAssembly-threads 启用的。网站也可以注册一个最初试验,在新特性完全标准化之前进行试验,帮助 Chrome 团队收集真实世界的反馈来验证和改进新特性。

V8 版本 7.1 增加了对WebAssembly模块的postMessage支持,允许 WebAssembly。模块对象通过 postMessage 发送给 web workers。目前这仅限于 web workers(相同的进程,不同的线程),不能用于跨流程场景(跨源 postMessage 或共享 web workers)。

V8 的最新版本包含了一些 JavaScript 语言特性。Version 7.0 将 description 属性添加到 Symbol.prototype 中,为访问描述符提供一个更符合人体工程学的机制。Symbol description accessor是第三阶段 TC39 提议,预计将成为 ES2019 的一部分,后者是明年的 JavaScript 标准版本。

Array.prototype.sort的性能也将随着 7.0 的发布得到提升。

版本 7.1 增加了对Intl.RelativeTimeFormat的支持,这是一个 API,提供了相对时间的高性能本地化格式化(例如,明天,25 秒前,或 6 周后)。

7.1 还包括对globalThis提议的支持,这是一种在严格的函数或模块中访问全局对象的机制,而不考虑底层平台。

最后一点,对性能进行了改进,以更好地处理高阶函数的局部函数上下文。

谷歌每六周创建一个 V8 JavaScript 引擎的分支版本,以配合谷歌 Chrome 的发布。V8 的 7.0 版本支持 Chrome 70, 7.1 支持 Chrome 71。V8 还为JavaScript 运行时提供支撑。

V8 是一个开源软件,具有几个外部依赖的代码库子集的适用许可。志愿者可以通过V8 Git项目进行贡献,但应该遵循V8的贡献指南和谷歌的开源行为指南。

查看英文原文:Google Releases Versions 7.0 and 7.1 of V8 JavaScript Engine

声明:本文来自用户分享和网络收集,仅供学习与参考,测试请备份。