Sun(如今的Oracle)公司持有着“Java”和“JavaScript”的商标。这就让微软不得不把本身的JavaScript方言称之为“JScript”。而后,在这门语言被标准化的时候,就必须使用一个与两者都不一样的名字。“ECMAScript”就这样诞生了,这个名字的来由是由于执行标准化的组织是Ecma国际。一般来讲,术语“ECMAScript”和“JavaScript”指的是同一个东西。但若是把JavaScript当作是“Mozilla或其余组织的ECMAScript实现”,那么ECMAScript就是实现JavaScript所依据的标准。javascript
Ecma国际 (一个标准化组织)建立了ECMA-262规范,这个规范就是ECMAScript语言的官方标准。java
是一组开发ECMA-262标准规范的人(Brendan Eich和其余一些人)。web
1997年6月发布,本质上与javascript 1.1 相同——只不过只不过删除了全部针对浏览器的代码并做了一些较小的改动:ECMAScript要求支持Unicode标准,并且对象也变成了平台无关的。正则表达式
1998年6月发布,主要是编辑加工的结果。这一版的内容更新是为了与ISO/IEC-16262保持严格一致,没有做任何新增、修改或删节处理。所以,通常不使用第2版来衡量ECMAScript实现的兼容性。编程
1999年12月发布,是对ECMAScript标准第一次真正的修改。新增了对正则表达式、新控制语句、try-catch异常处理的支持,修改了字符处理、错误定义和数值输出等内容。
从各方面综合来看,第3版标志着ECMAScript成为了一门真正的编程语言。数组
于2008年7月发布前被废弃……命运坎坷浏览器
2009年12月发布,该版本力求澄清第3版中的歧义,并添加了新的功能。新功能包括:原生JSON对象、继承的方法、高级属性的定义以及引入严格模式。编程语言
2015年6月17日发布。截止发布日期,JavaScript的官方名称是ECMAScript 2015,Ecma国际意在更频繁地发布包含小规模增量更新的新版本,下一版本将于2016年发布,命名为ECMAScript 2016。从如今开始,新版本将按照ECMAScript+年份的形式发布。
S6是继ES5以后的一次主要改进,语言规范由ES5.1时代的245页扩充至600页。ES6增添了许多必要的特性,例如:模块和类以及一些实用特性,例如Maps、Sets、Promises、生成器(Generators)等。
尽管ES6作了大量的更新,可是它依旧彻底向后兼容之前的版本,标准化委员会决定避免由不兼容版本语言致使的“web体验破碎”。结果是,全部老代码均可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。code
2016年6月小幅修订的《ECMAScript 2016标准》(简称 ES2016)如期发布(只新增了数组实例的includes方法和指数运算符)对象
还未发布正式版本。