JavaScript 的版本有哪些?怎么查看和管理当前版本?

文章导读
上一个 测验 下一个 JavaScript 由 Brendan Eich 于 1995 年开发。它于 1997 年由欧洲计算机制造商协会 (ECMA) 标准化,正式名称为 ECMAScript。该语言的第一个版本称为 ECMAScript 1(简称 ES1)。前三个版本(E
📋 目录
  1. JavaScript 版本
  2. 浏览器支持
A A

JavaScript - 版本



上一个
测验
下一个

JavaScript 由 Brendan Eich 于 1995 年开发。它于 1997 年由欧洲计算机制造商协会 (ECMA) 标准化,正式名称为 ECMAScript。该语言的第一个版本称为 ECMAScript 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
  • 添加了 regular expressions
  • 添加了 do-while
  • 添加了 switch
  • 添加了 try/catch
ES4 ECMAScript 4 从未发布。
ES5 ECMAScript 5 2009
  • JavaScript strict mode
  • 多行字符串
  • String.trim()
  • Array methods
  • Object methods
  • Getters and setters
  • 尾随逗号
ES6 ECMAScript 2015 2015
  • let 和 const 语句
  • Map 和 set objects
  • Arrow functions
  • For/of loop
  • 部分 array methods
  • Symbol
  • Classes
  • Promises
  • JavaScript Modules
  • 新的 Number methods 和 properties
  • For/of loop
  • Spread operator
ES7 ECMAScript 2016 2016
  • 指数 (**) operator
  • Array.includes() method
ES8 ECMAScript 2017 2017
  • 添加了 Async/await
  • 添加了 Object.entries() method
  • 添加了 Object.values() method
  • 添加了 Object.getOwnPropertyDescriptor() method
  • 添加了 string padding
ES9 ECMAScript 2018 2018
  • Rest object properties
  • JavaScript shared memory
  • Promise.finally() method
  • RegExp() object 的新特性
ES10 ECMAScript 2019 2019
  • String trim.start()
  • String trim.end()
  • Array.flat()
  • 修订的 Array.sort()
  • 修订的 JSON.stringify() / toString()
  • Object.fromEntries() method
ES11 ECMAScript 2020 2020
  • Nullish Coalescing Operator (??)
  • BigInt primitive data type
ES12 ECMAScript 2021 2021
  • String.replaceAll() method
  • Promise.Any() method
ES13 ECMAScript 2022 2022
  • class 中的 static block
  • 新的 class 特性
  • Top-level await
ES14 ECMAScript 2023 2023
  • Array findLast() & findLastIndex()
  • Hashbang Grammer
  • Symbols as WeakMap keys

自 2016 年起,按发布年份命名的早期更新版本开始发布。2023 年 6 月的更新发布称为 ECMAScript 2023。

浏览器支持

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

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