Let's Connect!

Message me on Telegram for quick collaboration.

JavaScript ES2024: New Features You Should Know
Klement
6/3/2024
5 min read
3,245 views

JavaScript ES2024: New Features You Should Know

JavaScript continues to evolve with new features that make development more efficient and code more readable. Let's explore the latest additions in ES2024.

1. Array Grouping

Group array elements by a common property:

const products = [
  { name: 'Laptop', category: 'Electronics' },
  { name: 'Shirt', category: 'Clothing' },
  { name: 'Phone', category: 'Electronics' }
];

const grouped = Object.groupBy(products, item => item.category);
// Result: { Electronics: [...], Clothing: [...] }

2. Promise.withResolvers()

A cleaner way to create promises:

const { promise, resolve, reject } = Promise.withResolvers();

// Use resolve/reject from outside the promise constructor
setTimeout(() => resolve('Success!'), 1000);

3. Temporal API (Stage 3)

Better date and time handling:

const now = Temporal.Now.plainDateTimeISO();
const future = now.add({ days: 7 });
const duration = future.since(now);

4. Pattern Matching (Proposal)

Powerful pattern matching syntax:

const result = match (value) {
  when (x if x > 10) -> 'large',
  when (x if x > 5) -> 'medium',
  when (_) -> 'small'
};

These features will make JavaScript development more expressive and efficient.