Trailing commas in function parameter lists and calls
Async functions
Shared memory and atomics
ES2018
Lifting template literal restriction
s (dotAll) flag for regular expressions
RegExp named capture groups
Rest/Spread Properties
RegExp Lookbehind Assertions
RegExp Unicode Property Escapes
Promise.prototype.finally
Asynchronous Iteration
ES2019
Optional catch binding
JSON superset
Symbol.prototype.description
Function.prototype.toString revision
Object.fromEntries
Well-formed JSON.stringify
String.prototype.{trimStart,trimEnd}
Array.prototype.{flat,flatMap}
ES2020
String.prototype.matchAll
import()
BigInt
Promise.allSettled
globalThis
for-in mechanics
Optional Chaining
Nullish coalescing Operator
import.meta
ES2021
String.prototype.replaceAll
Promise.any
WeakRefs
Logical Assignment Operators
Numeric separators
ES2022
Class Fields (Private instance methods and accessors, Class Public Instance Fields & Private Instance Fields, Static class fields and private static methods)