ECMAScript 2015 (ES6) 及更高版本

目录

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

所有 ECMAScript 2015 (ES6) 功能都分为三组,用于发布阶段进行中功能:

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

默认情况下,哪个 Node.js 版本附带哪些功能?

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

哪些功能正在进行中?

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

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

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

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

如何找到特定版本的 Node.js 附带的 V8 版本?

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

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