ECMAScript各版本简介及特性

 

ECMAScript 2019   ES10 草案 2019/02/21

ECMAScript 2018    es9         2018年 6 月底

ECMAScript2017    es8      2017在7月12日

ECMAScript2016    es7     2016年6月19日发布   

ECMAScript 2015         es6         2015年6月17日发布   

es9

ECMAScript 2018(第九版 JS)已于 6 月底正式发布,带来了许多新特性。

ECMAScript 2018 于今年2月出炉草案,TC39 技术委员会每两个月开会一次,讨论当前草案的现状。ECMAScript 2018 主要包含内容:

ECMAScript 2018 规范 PDF 地址:

https://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf

es8

Ecma 国际公布了第八版的 ECMAScript 语言规范 ECMAScript 2017(或 ES8)。

ECMAScript 是标准化的 JavaScript 语言,1997 年发布了第一版,1998 年和 1999 年发布了第二和第三个版本,之后沉寂 了许多年,直到 Ajax 流行起来后标准工作才再次起步,2009 年发布了第五个版本,自 2015 年起每年发布一个版本。

ECMAScript 2017 的主要变化包括:Object.values/Object.entries、字符串填充、Object.getOwnPropertyDescriptor、尾随逗号、异步函数、共享内存和原子,等。

es7

官网

ECMA 国际批准了第七版的 ECMAScript 语言规范(ECMAScript 2016)。

ECMAScript 是标准化的 JavaScript 语言,1997年发布了第一版,1998年和1999年发布了第二和第三个版本。

之后 ECMAScript 沉寂 了许多年,直到 Ajax 流行起来后标准工作才再次起步。2009年发布了第五个版本,2015年发布了第六个版本。

第七个版本又被称为 ECMAScript 2016,与第六个版本相比变化并不多,主要是增加了两个新特性:Array.prototype.include和取幂运算符。

ECMAScript现在每年发布一个新版规范,ECMAScript 2017已在制定之中。

es6

2015年6月17日发布。截止发布日期,JavaScript的官方名称是ECMAScript 2015,Ecma国际意在更频繁地发布包含小规模增量更新的新版本,下一版本将于2016年发布,命名为ECMAScript 2016。从现在开始,新版本将按照ECMAScript+年份的形式发布。
S6是继ES5之后的一次主要改进,语言规范由ES5.1时代的245页扩充至600页。ES6增添了许多必要的特性,例如:模块和类以及一些实用特性,例如Maps、Sets、Promises、生成器(Generators)等。
尽管ES6做了大量的更新,但是它依旧完全向后兼容以前的版本,标准化委员会决定避免由不兼容版本语言导致的“web体验破碎”。结果是,所有老代码都可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。

///////////////

ECMAScript

Sun(现在的Oracle)公司持有着“Java”和“JavaScript”的商标。这就让微软不得不把自己的JavaScript方言称之为“JScript”。

然后,在这门语言被标准化的时候,就必须使用一个与二者都不同的名字。“ECMAScript”就这样诞生了,这个名字的来由是因为执行标准化的组织是Ecma国际

通常来说,术语“ECMAScript”和“JavaScript”指的是同一个东西。

但如果把JavaScript看成是“Mozilla或其他组织的ECMAScript实现”,那么ECMAScript就是实现JavaScript所依据的标准。

ECMA-262

Ecma国际 (一个标准化组织)创建了ECMA-262规范,这个规范就是ECMAScript语言的官方标准

Ecma第39号技术委员会 (TC39)

是一组开发ECMA-262标准规范的人(Brendan Eich和其他一些人)。

ECMA规范最终由TC39敲定。TC39由包括浏览器厂商在内的各方组成,他们开会推动JavaScript提案沿着一条严格的发展道路前进。

从提案到入选ECMA规范主要有以下几个阶段:

  • Stage 0: strawman——最初想法的提交。
  • Stage 1: proposal(提案)——由TC39至少一名成员倡导的正式提案文件,该文件包括API事例。
  • Stage 2: draft(草案)——功能规范的初始版本,该版本包含功能规范的两个实验实现。
  • Stage 3: candidate(候选)——提案规范通过审查并从厂商那里收集反馈
  • Stage 4: finished(完成)——提案准备加入ECMAScript,但是到浏览器或者Nodejs中可能需要更长的时间。

参考

猜你喜欢

转载自www.cnblogs.com/dhjy123/p/11958566.html