•
阅读 3 分钟
功能关注:ECMAScript 2021
这篇文章跟踪 ES2021 可能实现的功能,我将持续更新它。
一句话介绍 ECMAScript 版本
注意自从 TC39 进程 创建以来,ECMAScript 的重要版本过程被缩短。真正重要的是功能状态进度:一旦进入 stage 4,它将是安全的。但是,你不得不再三确认功能在你所用的引擎中是否支持。
提议的 ECMAScript 2021 功能
回想一下,每一个 ECMAScript 功能提案都要经过几个阶段:
- stage 4 意味着功能提案将是下个发布版本(或者下一版的一部分)。
- stage 3 意味着一个功能有机会被包含在下一个版本中。
TC39 进程阶段图:
stage 4 和 ECMAScript 标准草稿
- String.prototype.replaceAll(Peter Marshall, Jakob Gruber, Mathias Bynens)
- Promise.any()(Mathias Bynens, Kevin Gibbons, Sergey Rubanov)
- WeakRefs (Dean Tribble, Mark Miller, Till Schneidereit, Sathya Gunasekaran, Daniel Ehrenberg) [proposal]
- Logical assignment operators(Justin Ridgewell, Hemanth HM)
- 数字分隔符(Sam Goto, Rick Waldron)
候选功能(stage 3)
下面所列的是当前处于 stage 3 的功能:
- 适用与 JavaScript 的 Legacy RegExp(Claude Pache)[proposal]
- JavaScript 类中私有方法和其访问器(Daniel Ehrenberg, Kevin Gibbons)
- 公有类字段和私有类字段(Daniel Ehrenberg, Jeff Morrison, Kevin Smith, Kevin Gibbons):
- 公有静态类字段,私有静态方法,私有 getters/setters(Daniel Ehrenberg, Kevin Gibbons, Jeff Morrison, Kevin Smith, Shu-Yu Guo):
- Hashbang grammar (Bradley Farias) [proposal]
- Top-level await(Myles Borins)
- RegExp match indices(Ron Buckton)
Atomics.waitAsync
(Lars Hansen, Shu-yu Guo) [proposal]- .item()(Shu-yu Guo, Tab Atkins)
- Import 声明(Myles Borins, Sven Sauleau, Dan Clark, Daniel Ehrenberg)[proposal]
FAQ
阶段意味着什么?
它们指的是所谓的“TC39 进程”的成熟阶段。更多信息请查看 “JavaScript for impatient programmers” 中的 “The TC39 process” 一节。
我最喜欢的功能提案进展如何?
如果你想知道各种提案的功能处于什么阶段,请参考 ECMA-262 GitHub 仓库的 README。
有一个 ECMAScript 功能的官方列表吗?
是的,TC39 仓库列出了已完成的提案,并提到了它们被引入的 ECMAScript 版本。
本文由 吳文俊 翻译,原文地址 ECMAScript 2021
标签:
#javascript
#es2021