ECMAScript 标准

ecmascript2026-08-24 19:46:25

ECMAScript 是一种由 ECMA 国际(European Computer Manufacturers Association)标准化的脚本语言规范。它是 JavaScript 的基础,定义了这门语言的核心语法、类型、对象模型和基本功能。ECMAScript 的标准化版本由 TC39 委员会负责维护和更新。

官网
http://www.ecmascript.org/

ECMA-262, 15th edition, June 2024
https://262.ecma-international.org/

版本历史 (ES6 及以后)

ECMAScript 2015 (ES6)

2015 年发布,引入了大量新特性,如箭头函数、类、模块、Promise、let 和 const 等。

ECMAScript 2016 (ES7)

2016 年发布,引入了 Array.prototype.includes 和指数操作符 **。

ECMAScript 2017 (ES8)

2017 年发布,引入了 async/await、Object.entries、Object.values 等。

ECMAScript 2018 (ES9)

2018 年发布,引入了异步迭代器、Rest/Spread 属性等。

ECMAScript 2019 (ES10)

2019 年发布,引入了 Array.prototype.flat、Array.prototype.flatMap、Object.fromEntries 等。

ECMAScript 2020 (ES11)

2020 年发布,引入了可选链操作符 ?.、空值合并操作符 ?? 等。

ECMAScript 2021 (ES12)

2021 年发布,引入了逻辑赋值操作符、字符串的 replaceAll 方法等。

ECMAScript 2022 (ES13)

  • 引入了顶层 await,允许关键词 在模块的顶层使用
  • 类的私有字段
  • Object.hasOwn

ECMAScript 2023 (ES14)

  • Object.groupBy
  • Array.toSliced(), Array.toSorted(), 和 Array.toReversed()
  • findLast() 和 findLastIndex()

ECMAScript 2024 (ES15)

  • Map.groupBy()
  • Promise.withResolvers()
  • 正则表达式标志 /v
  • String.prototype.isWellFormed
  • String.prototype.toWellFormed
  • Atomics.waitAsync()

ECMAScript 2025 (ES16)

https://tc39.es/ecma262/multipage/

版本历史 (ES6 之前)

ECMAScript 1 (ES1)

1997 年发布,定义了最初的标准。

ECMAScript 2 (ES2)

1998 年发布,主要是对 ES1 的修订。

ECMAScript 3 (ES3)

1999 年发布,引入了正则表达式、try/catch 异常处理等特性。

ECMAScript 4 没有发布

ECMAScript 5 (ES5)

2009 年发布,引入了严格模式、JSON 支持、Array 方法等。

ECMAScript 5.1

2011 年发布。

本页目录