ES6/ES2015
- 类
- Set
- Map
- Proxy
- 模块化
- Promise
- 箭头函数
- 解构赋值
- 模板字符串
- 展开操作符
- let 与 const
- 对象属性简写
- 函数参数默认值
ES7/ES2016
- 指数运算符(
**
)
- Array.prototype.includes()
ES8/ES2017
- async & await
- Object.values()
- Object.entries()
- padStart() & padEnd()
- 函数参数列表结尾允许逗号
- Object.getOwnPropertyDescriptors()
- ShareArrayBuffer & Atomics 共享内存读写
ES9/ES2018
- 异步迭代
- Promise.finally()
- Rest & Spread 属性
- 正则表达式 dotAll 模式
- 正则表达式 Unicode 转义
- 非转义序列的模板字符串
- 正则表达式反向断言(lookbehind)
- 正则表达式命名捕获组(Regular ExpressionNamed Capture Groups)
ES10/ES2019
- 可选的 catch 参数
- Object.fromEntries()
- JSON.stringify() 优化
- 私有的实例方法和访问器
- Symbol.prototype.description
- Array.flat() & Array.flatMap()
- Array.Sort 中 QuickSort 换成 TimSort
- String.trimStart() & String.trimEnd()
- Function.toString() 会保留空格、换行、注释等
ES11/ES2020
- BigInt
- import()
- globalThis
- nullish:
??
- for-in 顺序标准化
- String.matchAll()
- optional chaining:
?
ES12/ES2021
- WeakRef
- 数字分隔符
- Promise.any()
??=
, &&=
, ||=
- AggregateError
- String.replaceAll()
- FinalizationRegistry
- 优化 Array.prototype.sort
ES13/ES2022
- top-level await
- Object.hasOwn
- public & private(
#fieldname
) 成员修饰符