JavaScript 版本

2025年4月4日 | 阅读 3 分钟

JavaScript 是一种编程语言,可让开发人员创建交互式网页。JavaScript 是一种高级、解释型编程语言,主要用于构建交互式和动态的网站。

它由 Brendan Eich 于 1995 年开发。1997 年,JavaScript 成为标准,称为 ECMAScript。

自那时以来,ECMAScript 出现了许多版本,并随着时间的推移添加了新功能。2016 年之后的每个版本都以其发布年份命名,例如 ECMAScript 2016、ECMAScript 2017 等。

JavaScript 版本列表

  • ECMAScript 1 (ES1)
  • ECMAScript 2
  • ECMAScript 3
  • ECMAScript 4
  • ECMAScript 5
  • ECMAScript 2015
  • ECMAScript 2016
  • ECMAScript 2017
  • ECMAScript 2018

ECMAScript 1

ES1,也称为 ECMAScript 1,是 ECMAScript 标准的第一个版本,于 1997 年发布。ES1 基于 JavaScript 语言,它还包含 变量函数 和基本控制流语句等功能。

ECMAScript 2

ECMAScript 2 是该语言的第二个官方发布版本,于 1998 年发布。语言中有一些小的改动。此次更新的主要目的是使 ECMAScript 更加一致。

ECMAScript 3

ECMAScript 3 是 JavaScript 语言开发的一个重要里程碑。它于 1999 年发布。ES3 引入了许多仍在使用中的功能,包括正则表达式、try/catchJSON

ECMAScript 4

ECMAScript 4 从未发布;它最初计划成为 JavaScript 标准的第四个版本,但由于开发过程中存在一些分歧和挑战,因此并未发布。

ECMAScript 5

ES5,也称为 ECMAScript 5,于 2009 年发布。它是 ECMAScript 标准的第五个版本。在此版本中,我们获得了一些重要功能,例如严格模式、JSON 支持和改进的数组操作。

ECMAScript 5.1

ES5.1 也称为 ECMAScript 5.1,于 2011 年发布。它是 ECMAScript 5 的一个小更新;它主要侧重于使标准更一致并纠正错误。

ECMAScript 2015

ES6 也称为 ECMAScript 6,于 2015 年发布。它是 ECMAScript 标准的第六个版本。在此版本中,它引入了几个重要功能,例如 let 和 const、箭头函数模板字面量 和类。

ECMAScript 2016

ECMAScript 2016,也称为 ES7,引入了一些旨在使代码更高效、更易读的新功能。ES7 于 2016 年发布。

幂运算符:ES7 在已支持的 JavaScript 算术运算(如 +、-、*)之外,添加了一个幂运算符(**)。此运算符将第一个操作数提升到第二个操作数的幂。

Includes():如果数组包含某个值,则返回 true,否则返回 false。

ECMAScript 2017

ECMAScript 2017,也称为 ES8,于 2018 年发布。在此版本中,它允许使用 JavaScript 进行新的编码方式,例如 padStart()、padEnd()、await/async、object.entries() 等。

ECMAScript 2018

ECMAScript 2018 是最新的更新,于 2018 年发布。它引入了一些功能,例如扩展运算符和剩余参数等。

版本名称发布年份特点
ES1ECMAScript 11997它是初始发布。
ES2ECMAScript 21998它引入了一些小的改动。
ES3ECMAScript31999它引入了
  • 正则表达式
  • Try/catch
  • 异常处理
  • Switch case 和 do-while
ES4ECMAScript 4 由于冲突而被放弃。
ES5ECMAScript 52009在此版本中,引入了一些功能,例如
  • JavaScript 严格模式
  • JSON 支持
  • JS getter 和 setter
ES6ECMAScript 20152015新增功能
  • Let 和 const
  • 类声明
  • 导入和导出
  • For...of 循环
  • 箭头函数
ES7ECMAScript 20162016新增功能
  • 变量的块级作用域
  • Async/await
  • Array.includes 函数
  • 指数运算符
ES8ECMAScript 20172017新增功能
  • Object.values
  • Object.entries
  • Object.getOwnPropertiesDescriptions。
ES9ECMAScript 20182018新增功能
  • 扩展运算符
  • 剩余参数
ES10ECMAScript 20192019新增功能
  • Array.flat()
  • Array.flatMap()
  • Array.sort 现在是稳定的
ES11ECMAScript 20202020新增功能
  • Nullish coalescing operator (空值合并运算符)
  • BigInt 原始类型
ES12ECMAScript 20212021新增功能
  • String.replaceAll() 方法
  • Promise.any() 方法
ES13ECMAScript 20222022新增功能
  • 顶层 await
  • 新的类元素
  • 类中的静态块
ES14ECMAScript 20232023新增功能
  • toSorted 方法
  • toReversed 方法
  • Array findLast() & findLastIndex()