JavaScript 版本
JavaScript 由 Brendan Eich 在 1995 年发明,并在 1997 年成为 ECMA 标准。
ECMAScript 是该语言的正式名称。
ECMAScript 版本已缩写为 ES1、ES2、ES3、ES5 和 ES6。
自 2016 年起,版本以年份命名(ECMAScript 2016、2017、2018、2019、2020)。
ECMAScript 版本
版本 | 正式名称 | 描述 |
---|---|---|
ES1 | ECMAScript 1 (1997) | 第一版 |
ES2 | ECMAScript 2 (1998) | 编辑更改 |
ES3 | ECMAScript 3 (1999) | 添加了正则表达式 添加了 try/catch 添加了 switch 添加了 do-while |
ES4 | ECMAScript 4 | 未发布 |
ES5 | ECMAScript 5 (2009) 阅读更多 |
添加了“严格模式” 添加了 JSON 支持 添加了 String.trim() 添加了 Array.isArray() 添加了数组迭代方法 允许对象文字使用尾随逗号 |
ES6 | ECMAScript 2015 阅读更多 |
添加了 let 和 const 添加了默认参数值 添加了 Array.find() 添加了 Array.findIndex() |
ECMAScript 2016 阅读更多 |
添加了指数运算符 (**) 添加了 Array.includes() |
|
ECMAScript 2017 阅读更多 | 添加了字符串填充 添加了 Object.entries() 添加了 Object.values() 添加了异步函数 添加了共享内存 允许函数参数使用尾随逗号 |
|
ECMAScript 2018 阅读更多 | 添加了剩余/展开属性 添加了异步迭代 添加了 Promise.finally() 正则表达式新增 |
|
ECMAScript 2019 阅读更多 | String.trimStart() String.trimEnd() Array.flat() Object.fromEntries 可选捕获绑定 |
|
ECMAScript 2020 阅读更多 | 空值合并运算符 (??) |
本教程涵盖了 JavaScript 的所有版本
- 原始的 JavaScript ES1 ES2 ES3 (1997-1999)
- 第一个主要修订版 ES5 (2009)
- 第二个修订版 ES6 (2015)
- 年度新增 (2016、2017、2018、2019、2020)
浏览器支持
所有现代浏览器都完全支持 ECMAScript 1-6。
浏览器对 ES5 (2009) 的支持
浏览器 | 版本 | 从日期 |
---|---|---|
Chrome | 23 | 2012 年 11 月 |
Firefox | 21 | 2013 年 5 月 |
IE | 9* | 2011 年 3 月 |
IE / Edge | 10 | 2012 年 9 月 |
Safari | 6 | 2012 年 7 月 |
Opera | 15 | 2013 年 7 月 |
* Internet Explorer 9 不支持 ECMAScript 5 的“use strict”。
浏览器对 ES6 (2015) 的支持
浏览器 | 版本 | 日期 |
---|---|---|
Chrome | 51 | 2016 年 5 月 |
Firefox | 52 | 2017 年 3 月 |
Edge | 14 | 2016 年 8 月 |
Safari | 10 | 2016 年 9 月 |
Opera | 38 | 2016 年 6 月 |
Internet Explorer 不支持 ECMAScript 2015。
浏览器对 ECMAScript 2016 的支持
浏览器 | 版本 | 日期 |
---|---|---|
Chrome | 52 | 2016 年 7 月 |
Firefox | 54 | 2017 年 6 月 |
Edge | 14 | 2016 年 8 月 |
Safari | 10.1 | 2017 年 3 月 |
Opera | 39 | 2016 年 8 月 |