Parliamo

project-cherry.dev

Intermedio12 min

ES6+ Features

Le funzionalità moderne di JavaScript da ES6 in poi che ogni sviluppatore deve conoscere.

ES6+ Features

A partire da ES6 (2015), JavaScript ha ricevuto aggiornamenti annuali che lo hanno reso un linguaggio moderno e potente. Ecco le funzionalità più importanti.

Optional chaining (?.)

Accedi a proprietà annidate senza rischiare errori se un valore è null o undefined:

javascript
const utente = { profilo: { indirizzo: { citta: "Roma" } } };
const citta = utente?.profilo?.indirizzo?.citta; // "Roma"
const cap = utente?.profilo?.indirizzo?.cap;     // undefined (no errore)

Nullish coalescing (??)

Fornisci un valore di default solo se il valore è null o undefined (non per 0 o ""):

javascript
const porta = 0;
console.log(porta || 3000);  // 3000 (indesiderato!)
console.log(porta ?? 3000);  // 0 (corretto)

Rest e Spread

javascript
// Rest: raccoglie argomenti in un array
function somma(...numeri) {
  return numeri.reduce((a, b) => a + b, 0);
}

// Spread: espande un iterabile
const config = { tema: "scuro", lingua: "it" };
const nuovaConfig = { ...config, lingua: "en" };

Map e Set

javascript
// Map: coppie chiave-valore con chiavi di qualsiasi tipo
const cache = new Map();
cache.set("utente:1", { nome: "Luca" });
cache.get("utente:1"); // { nome: "Luca" }

// Set: valori unici
const unici = new Set([1, 2, 2, 3, 3]);
console.log([...unici]); // [1, 2, 3]

for...of

Itera su qualsiasi iterabile (array, stringhe, Map, Set):

javascript
for (const frutto of ["mela", "pera", "kiwi"]) {
  console.log(frutto);
}