Recent Additions (ES2023+) in JavaScript
From the JavaScript cheat sheet ยท Modern JavaScript (ES6+) ยท verified Jul 2026
Recent Additions (ES2023+)
Newer JavaScript features added since 2023: immutable arrays, grouping, structured clone, iterator helpers, and more.
javascript
// === Immutable array methods (ES2023) ===
const nums = [3, 1, 2]
nums.toSorted() // [1, 2, 3] (nums unchanged)
nums.toReversed() // [2, 1, 3]
nums.toSpliced(1, 1, 99) // [3, 99, 2]
nums.with(0, 100) // [100, 1, 2]
// === Object.groupBy (ES2024) ===
const users = [
{ name: 'Alice', role: 'admin' },
{ name: 'Bob', role: 'user' },
{ name: 'Carol', role: 'admin' },
]
Object.groupBy(users, u => u.role)
// { admin: [Alice, Carol], user: [Bob] }
// === Promise.withResolvers (ES2024) ===
const { promise, resolve, reject } = Promise.withResolvers()
// === structuredClone (deep clone โ almost anything) ===
const copy = structuredClone({ date: new Date(), nested: [1, 2] })
// === Iterator helpers (ES2025) ===
const evens = nums.values().filter(n => n % 2 === 0).take(3).toArray()๐ก Immutable array methods (toSorted, toReversed, toSpliced, with) return new arrays โ don't mutate
โก Object.groupBy / Map.groupBy replace manual reduce-based grouping
๐ Promise.withResolvers exposes resolve/reject outside the executor โ handy for adapters
๐ฅ structuredClone deep-clones almost anything (Date, Map, Set, ArrayBuffer, nested objects)