标签
note
字数
640 字
阅读时间
3 分钟
ECMA
ECMA(European Computer Manufacturers Association,欧洲计算机制造商协会),这是一个国际组织,主要负责维护各种计算机的相关标准。
我们都知道 JavaScript 这门语言最早来自于网景(Netscape),但网景在和微软(IE)的竞争落得下风,为了避免最终 Web 脚本主导权落入微软手中,网景开始寻求 ECMA 组织的帮助,来推动 JavaScript 的标准化。
JS 加入 ECMA
在 1996 年,JavaScript 正式加入了 ECMA 大家庭,我们后面会叫它 ECMAScript(下文简称 ES)
TC39 则是 ECMA 为 ES 专门组织的技术委员会(Technical Committee),39 这个数字则是因为 ECMA 使用数字来标记旗下的技术委员会。TC39 的成员由各个主流浏览器厂商的代表构成(因为毕竟最后还要这些人实现嘛)。
ECMA-262 即为 ECMA 组织维护的第 262 条标准,这一标准是在不断演进的,如现在是 2022 年 7 月发布的第 13 版。同样的,目前最为熟知的是 2015年发布的ES6。你还可以在 TC39的ECMA262官网 上看到 ES2022 的最新草案。
ECMA 还维护着许多其他方面的标准,如 ECMA-414,定义了一组 ES 规范套件的标准;ECMA-404,定义了 JSON 数据交换的语法;甚至还有 120mm DVD 的标准:ECMA267。
提案的交付流程
- 对于一个提案从提出到最后被纳入 ES 新特性,TC39 的规范中有五步要走:
- stage0(strawman),任何 TC39 的成员都可以提交。
- stage1(proposal),进入此阶段就意味着这一提案被认为是正式的了,需要对此提案的场景与 API 进行详尽的描述。
- stage2(draft),演进到这一阶段的提案如果能最终进入到标准,那么在之后的阶段都不会有太大的变化,因为理论上只接受增量修改。
- state3(candidate),这一阶段的提案只有在遇到了重大问题才会修改,规范文档需要被全面的完成。
- state4(finished),这一阶段的提案将会被纳入到 ES 每年发布的规范之中。
- 有兴趣的同学可以阅读 The TC39 process for ECMAScript features 了解更多
参考
聊一聊进行中的TC39提案(stage1/2/3) - 掘金