ECMAScript 2015 (ES6) 及以上

目录

Node.js 是针对现代版本的 V8 构建的。 通过与该引擎的最新版本保持同步,我们确保及时向 Node.js 开发者提供 JavaScript ECMA-262 规范 的新特性,以及持续的性能和稳定性改进。

所有 ECMAScript 2015 (ES6) 特性都分为三组,分别为 交付中已就绪进行中 特性:

  • 所有 交付中 特性(V8 认为稳定的),都会变成 在 Node.js 上默认开启,并且 需要任何类型的运行时标志。
  • 已就绪 特性,即几乎完成的特性,但 V8 团队认为不稳定,需要运行时标志: --harmony.
  • 进行中 特性可以通过各自的协调标志单独激活,但除非出于测试目的,否则强烈建议不要这样做。 注意: 这些标志由 V8 公开,并且可能会在没有任何弃用通知的情况下发生变化。

默认情况下,哪个 Node.js 版本交付哪些特性?

网站 node.green 基于 kangax 的兼容表,提供了对各种 Node.js 版本中支持的 ECMAScript 特性的出色概述。

哪些特性正在进行中?

新特性不断添加到 V8 引擎中。 一般来说,预计它们会登陆未来的 Node.js 版本,尽管时间未知。

你可以通过 --v8-options 参数查找列出每个 Node.js 版本上可用的所有正在进行的特性。 请注意,这些是 V8 的不完整且可能破坏的特性,因此使用它们需要你自担风险:

我的基础架构设置为使用 --harmony 标志。我应该删除它吗?

Node.js 上 --harmony 标志的当前行为是仅启用 已就绪 特性。 毕竟现在已经是 --es_staging 的代名词了。 如上所述,这些是尚未被认为稳定的已完成特性。 如果你想安全起见,尤其是在生产环境中,请考虑删除此运行时标志,直到它默认在 V8 上交付,然后在 Node.js 上交付。 如果保持此启用状态,你应该准备好进一步升级 Node.js 以在 V8 更改其语义以更紧密地遵循标准时破坏你的代码。

如何找到特定版本的 Node.js 交付的 V8 版本?

Node.js 提供了一种简单的方法来通过 process 全局对象列出特定二进制文件交付的所有依赖和相应版本。 如果是 V8 引擎,请在终端中键入以下内容以检索其版本:

Node.js 中文网 - 粤ICP备13048890号