介绍
ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会)在标准ECMA-262中定义的脚本语言规范。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的实现和扩展。——百度百科
历史版本
年份 | 版本 | 描述 |
---|---|---|
1997 | ECMAScript 1 | 第一个版本 |
1998 | ECMAScript 2 | 版本变更 |
1999 | ECMAScript 3 | 强大的正则表达式,更好的词法作用域链处理,新的控制指令,异常处理,错误定义更加明确,数据输出的格式化及其它改变 |
ECMAScript 4 | 没有发布 | |
2009 | ECMAScript 5 | 添加严格模式(“use strict”)。修改了前面版本模糊不清的概念。增加了getters,setters,JSON以及在对象属性上更完整的反射 |
2011 | ECMAScript 5.1 | ECMAScript标5.1版形式上完全一致于国际标准ISO/IEC 16262:2011 |
2015 | ECMAScript 6 | ECMAScript 2015(ES2015),第 6 版,最早被称作是 ECMAScript 6(ES6),添加了类和模块的语法,其他特性包括迭代器,Python风格的生成器和生成器表达式,箭头函数,二进制数据,静态类型数组,集合(maps,sets 和 weak maps), promise,reflection 和 proxies。作为最早的 ECMAScript Harmony 版本,也被叫做ES6 Harmony 规范地址:http://www.ecma-international.org/ecma-262/6.0/ |
2016 | ECMAScript 7 | Array.prototype.includes()、幂运算符** 规范地址:http://www.ecma-international.org/ecma-262/6.0/ |
2017 | ECMAScript 8 | async/await、Object.values()/Object.entries()、String.prototype.padStart()/String.prototype.padEnd()、Object.getOwnPropertyDescriptors() 规范地址:http://www.ecma-international.org/ecma-262/8.0/ |
2018 | ECMAScript 9 | 包含了异步循环,生成器,新的正则表达式特性和 rest/spread 语法 规范地址:http://www.ecma-international.org/ecma-262/9.0/ |
2019 | ECMAScript 10 | Array.prototype.flat()、Array.prototype.flatMap()、Object.fromEntries()、String.trimStart 和 String.trimEnd、String.prototype.matchAll、try…catch可省略err、Symbol.prototype.description、Function.prototype.toString() |
2020 | ECMAScript 11 | import/export增强、正式支持了安全的链式操作、BigInt、Promise.allSettled、String.prototype.matchAll、globalThis、for-in mechanics 规范地址:http://www.ecma-international.org/ecma-262/11.0/ |
参考
[1]: https://zhuanlan.zhihu.com/p/152245696?from_voters_page=true
[2]:https://www.jianshu.com/p/aa34eb0ffabe
[3]:https://www.cnblogs.com/polk6/archive/2017/12/05/js-ECMAScript.html