内容提要
Node.js 27.0.0-alpha.0 发布,V8 引擎从 14.6 升级至 15.6.75.13,新增 Math.sumPrecise()、Intl.Locale.prototype.variants、Iterator 的 join/includes/zip/zipKeyed 方法及 import defer 等特性,并引入多项实验性标志。完整 V8 变更日志将稍后公布,由 Joyee Cheung 贡献。
延伸解读
V8 跨版本升级是本次发布的核心
Node.js 27.0.0-alpha.0 将 V8 从 14.6 提升到 15.6.75.13,跨度较大。文章列出的 Math.sumPrecise()、Intl.Locale.prototype.variants、Iterator 的 join/includes/zip/zipKeyed 以及 import defer 等,都是随这次引擎升级进入的。由于完整 V8 变更日志尚未公布,目前只能确认这些被点名的特性,其他行为变化需等官方日志。
新增语言特性偏向集合与模块加载
从清单看,变化集中在两类:一是 Iterator 原型新增 join、includes、zip、zipKeyed,方便对迭代结果做拼接、查找和配对;二是 import defer 配合 --js-defer-import-eval,涉及模块求值时机。Math.sumPrecise() 和 Intl.Locale.prototype.variants 则分别补充数值求和与区域设置信息。这些属于可直接在代码中使用的语言层能力。
实验性标志提示部分能力尚不稳定
文章提到多项实验性标志,例如 --js-immutable-arraybuffer、--js-regexp-buffer-boundaries、--experimental-wasm-<name> 等,说明相关能力需要显式开启,默认行为未必改变。对使用方而言,这意味着升级后不能假定这些特性默认可用,也不宜在未验证的情况下依赖其行为,应结合后续完整变更日志评估。
Alpha 定位与平台产物的现实限制
该版本号带 alpha,且发布页列出多平台安装包与二进制,但 macOS Intel 64 位二进制标注为 Coming soon。文章还给出源码、文档和校验文件链接。对读者来说,这更像面向尝鲜和测试的预发布版本,平台覆盖并非全部就绪,正式采用前需确认目标平台产物是否可用。
Q&A
Node.js 27.0.0-alpha.0.0.0 中 V8 引擎升级到了哪个版本?
V8 引擎从 Node.js 26 的 14.6 升级到了 15.6.75.13。
Node.js 27 的 V8 更新带来了哪些新的 JavaScript 语言特性?
新增了 Math.sumPrecise()、Intl.Locale.prototype.variants、Iterator.prototype.join()、Iterator.prototype.includes()、Iterator.zip()、Iterator.zipKeyed() 以及 import defer 等特性。
Node.js 27 中 import defer 对应的实验性标志是什么?
import defer 对应的实验性标志是 --js-defer-import-eval。
Node.js 27 的 V8 更新中,与 ArrayBuffer 相关的实验性标志有哪些?
与 ArrayBuffer 相关的实验性标志包括 --js-immutable-arraybuffer 和 --js-regexp-buffer-boundaries。
Node.js 27 的 V8 更新中,哪些功能受到了影响或涉及?
涉及的功能包括 Buffer、v8.serialize()、structuredClone()、postMessage()、v8.cachedDataVersionTag()、Math.random()、error.stack、await、Array.prototype.sort() 等。
Node.js 27 的 V8 更新是由谁贡献的?
由 Joyee Cheung 贡献,相关 PR 编号为 #65161、#66537 和 #66601。