JavaScript - 版本



JavaScript 由 Brendan Eich 于 1995 年开发。它于 1997 年由欧洲计算机制造商协会 (ECMA) 标准化,正式名称为 ECMAScript。该语言的第一个版本称为 ECMSScript 1(缩写为 ES1)。第一个三个版本(ES1、ES2 和 ES3)奠定了语言的基础。第四个版本 ES4 被放弃了。ES5(2009) 中完成了第一次主要修订。第二个主要修订版本是 ES6 (ECMAScript 2015)。2015 年之后,版本以其发布的年份命名。

最新版本的 JavaScript 是 ECMAScript 2023。

JavaScript 版本

在下表中,我们指定了有关每个版本的详细信息。

版本 官方名称 发行年份 添加的功能
ES1 ECMAScript 1 1997 首次发布
ES2 ECMAScript 2 1998 细微变化
ES3 ECMAScript 3 1999
  • 添加了正则表达式
  • 添加了 do-while
  • 新增开关
  • 添加了 try/catch
ES4 ECMAScript 4 Never Released.  
ES5 ECMAScript 5 2009
  • JavaScript 严格模式
  • 多行字符串
  • 字符串.trim()
  • 数组方法
  • 对象方法
  • getter 和 setter
  • 尾随逗号
ES6 ECMAScript 2015 2015
  • let 和 const 语句
  • 映射和设置对象
  • 箭头函数
  • For/of 循环
  • 一些数组方法
  • 象征
  • 承诺
  • JavaScript 模块
  • 新的 Number 方法和属性
  • For/of 循环
  • Spread 运算符
ES7 ECMAScript 2016 2016
  • 指数 (**) 运算符
  • Array.includes() 方法
ES8 ECMAScript 2017 2017
  • 添加了 Async/await
  • 添加了 Object.entries() 方法
  • 添加了 Object.values() 方法
  • 添加了 Object.getOwnPropertyDescriptor() 方法
  • 添加了字符串填充
ES9 ECMAScript 2018 2018
  • Rest 对象属性
  • JavaScript 共享内存
  • Promise.finally() 方法
  • RegExp() 对象的新功能
ES10 ECMAScript 2019 2019
  • 字符串 trim.start()
  • 字符串 trim.end()
  • Array.flat()
  • 修改了 Array.sort()
  • 修改后的 JSON.stringify() / toString()
  • Object.fromEntries() 方法
ES11 ECMAScript 2020 2020
  • Nullish 合并运算符 (??)
  • BigInt 基元数据类型
ES12 ECMAScript 2021 2021
  • String.replaceAll() 方法
  • Promise.Any() 方法
ES13 ECMAScript 2022 2022
  • 类内的 static 块
  • 新的类功能
  • 顶级 await
ES14 ECMAScript 2023 2023
  • 数组 findLast() & findLastIndex()
  • 哈希邦格拉默
  • 作为 WeakMap 键的元件

自 2016 年以来,将发布早期更新,其版本按发布年份命名。2023 年 6 月的更新版本称为 ECMAScript 2023。

浏览器支持

所有现代浏览器都完全支持 ES1 到 ES6。对于其他版本,您可以使用 Polyfill 并编写额外的代码。

Chrome Firefox Microsoft Edge Opera Safari Firefox Android
Yes Yes Yes Yes Yes Yes