各 ECMA 版本更新内容
| 版本 (ES) | 发布时间 | 主要更新内容 |
|---|---|---|
| ES5 (ECMAScript 5) | 2009年 | 引入严格模式("use strict")、JSON 支持、数组方法(forEach、map、filter 等)、对象方法(keys、defineProperty 等) |
| ES6 (ES2015) | 2015年6月 | 块级作用域(let、const)、箭头函数、类(Class)、模板字符串、解构赋值、Promise、模块(import、export)、Symbol 类型等 |
| ES2016 | 2016年6月 | 数组方法 includes()、指数运算符(**) |
| ES2017 | 2017年6月 | 异步函数(async、await)、字符串填充方法(padStart、padEnd)、对象方法(entries、values)、函数参数尾逗号 |
| ES2018 | 2018年6月 | 异步迭代(for-await-of)、Promise.finally()、对象展开运算符(...)、正则表达式改进(命名捕获组等) |
| ES2019 | 2019年6月 | 数组方法(flat()、flatMap())、Object.fromEntries()、字符串方法(trimStart()、trimEnd()) |
| ES2020 | 2020年6月 | BigInt 类型、动态 import、空值合并运算符(??)、可选链操作符(?.)、Promise.allSettled()、globalThis |
| ES2021 | 2021年6月 | 字符串方法 replaceAll()、Promise.any()、数值分隔符(1_000)、逻辑赋值运算符(&&=、||=、??=) |
| ES2022 | 2022年6月 | 类静态块(static {})、私有类字段(#field)、正则表达式匹配索引(d标志)、顶层 await |
| ES2023 | 2023年6月 | 数组方法(findLast()、findLastIndex())、Hashbang 语法支持、Symbol 作为 WeakMap 键 |
| ES2024 (预计) | 2024年6月 | 新增集合方法(Set.prototype.union、intersection等)、正则表达式重复命名捕获组 |
| ES2025 (提案) | 2025年3月 | Temporal 日期时间 API、装饰器(Decorators)、JSON模块、Promise.try()、集合方法完善 |