关于ECMA、ECMAScript、TC39、ES、Stage等概念的科普

简介: 关于ECMA、ECMAScript、TC39、ES、Stage等概念的科普

image.png

快速通道:

提到ECMA、ECMAScript、TC39、ES ,你可能对这些名词代表的概念一知半解甚至是从未了解过,不过没关系,不了解这些不会影响你对ES新特性的使用。本文只是简单的介绍下这些概念作为一次简单的科普,希望能帮你扩展下知识面。

ECMA:欧洲计算机制造协会 ,这是一个国际组织,主要负责维护各种计算机的相关标准。我们都知道JavaScript这门语言最早来自于网景(Netscape),但网景在和微软(IE)的竞争落得下风,为了避免最终Web脚本主导权落入微软手中,网景开始寻求ECMA组织的帮助,来推动JavaScript的标准化。

Ecma 国际:1994 年之后,由于 ECMA 组织的标准牵涉到很多其他国家,为了体现其国际性,更名为 Ecma 国际(Ecma International)。

ECMAScript:1996年,JavaScript正式加入了ECMA大家庭,简称 ECMAScript(或ES)。ES 是 JS 的规范,而 JS 是 ES 的一种实现方法

TC39:是ECMA为ES专门组织的技术委员会(Technical Committee),39这个数字则是因为ECMA使用数字来标记旗下的技术委员会。TC39的成员由各个主流浏览器厂商的代表构成。关于TC39的更对知识可参考:https://2ality.com/2015/11/tc39-process.html

ECMA-262:Ecma 国际的标准,都会以 Ecma-Number 命名,ECMA-262 就是 ECMA 262 号标准,具体就是指 ECMAScript 遵照的标准。1996 年 11 月,网景公司将 JavaScript 提交给 Ecma 国际进行标准化。ECMA-262 的第一个版本于 1997 年 6 月被 Ecma 国际采纳。这一标准是在不断演进的,如现在是2020年6月发布的第11版。同样的,目前最为熟知的是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每年发布的规范之中,只有到这个阶段的提案才会被标记为“已完成”,并在将来进入到下一个 ES 标准里。

如果文章有啥描述的不清楚的,欢迎批评指正+补充~

目录
相关文章
|
1天前
|
JavaScript 前端开发 安全
ECMAScript 6(以下简称 ES6)的出现为 JavaScript 带来了许多新的特性和改进,其中 let 和 const 是两个非常重要的关键字。
ES6 引入了 `let` 和 `const` 关键字,为 JavaScript 的变量管理带来了革新。`let` 提供了块级作用域和暂存死区特性,避免变量污染,增强代码可读性和安全性;`const` 用于声明不可重新赋值的常量,但允许对象和数组的内部修改。两者在循环、函数内部及复杂项目中广泛应用,有助于实现不可变数据结构,提升代码质量。
9 5
|
6月前
|
JavaScript
js开发:请解释什么是ES6的Symbol,以及它的用途。
ES6的Symbol数据类型创建唯一值,常用于对象属性键(防冲突)和私有属性。示例展示了如何创建及使用Symbol:即使描述相同,两个Symbol也不等;作为对象属性如`obj[symbol1] = 'value1'`;也可作枚举值,如`Color.RED = Symbol('red')`。
52 4
|
JavaScript 前端开发 索引
ECMA 2022 (es13) 新特性
ECMA 2022 (es13) 新特性
66 0
|
前端开发 JavaScript Java
【编程指南】ES2016到ES2023新特性解析一网打尽(二)
【编程指南】ES2016到ES2023新特性解析一网打尽(二)
149 0
|
JSON JavaScript 前端开发
【编程指南】ES2016到ES2023新特性解析一网打尽(一)
【编程指南】ES2016到ES2023新特性解析一网打尽(一)
100 0
|
JavaScript API Python
|
缓存 JSON JavaScript
这一次该明白 ECMAScript Module 与 CommonJS 的异同点是什么了吧?
这一次该明白 ECMAScript Module 与 CommonJS 的异同点是什么了吧?
164 0
|
存储 监控 JavaScript
ECMAScript 双月报告:Async Context 提案成功进入到 Stage 1
ECMAScript 双月报告:Async Context 提案成功进入到 Stage 1
178 0
|
JavaScript 前端开发 算法
ECMAScript 双月报告:Intl.Enumeration 提案成功进入到 Stage 4
ECMAScript 双月报告:Intl.Enumeration 提案成功进入到 Stage 4
210 0
|
存储 Web App开发 JSON
ECMAScript 双月报告:findLast 提案成功进入到 Stage 4
本次会议中,findLast 提案成功进入到了 Stage 4,这是第二个由中国开发者推动进入到 Stage 4 的提案。另外,较受关注的 String Dedent 与 JSON.parse source text access 等提案也在本次会议中取得了阶段性进展。
320 0
ECMAScript 双月报告:findLast 提案成功进入到 Stage 4