let, const ed evitare var
Impari le basi di let e const, perché evitare var, lo scope di blocco e una prima introduzione alla temporal dead zone (TDZ).
let, const ed evitare var è una lezione JavaScript Academy gratuita su CoddyKit. Questa è la lezione 1 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento JavaScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso JavaScript Academy include 3 lezioni in totale.
Introduzione
Obiettivo: usare let e const con sicurezza, evitare il costrutto legacy var e comprendere lo scope di blocco e la TDZ.
- let e const
- Scope di blocco
- Sicurezza con la TDZ

Nozioni di base su let e const
Regola: usi const a meno che non preveda di riassegnare il valore; in caso contrario scelga let.
// Prefer const by default; use let when you need to reassign
const appName = "CoddyKit";
// cannot reassign
let score = 0;
// can reassign
score = score + 1;
console.log("App:", appName);
console.log("Score:", score);

Perché evitare var
Eviti var perché:
- ha scope di funzione, non di blocco.
- è soggetto a hoisting e può risultare undefined se letto prima della dichiarazione.
- rende i refactoring più difficili e meno prevedibili.

Esempio di scope di blocco
Lo scope di blocco aiuta a mantenere le variabili locali e il codice ordinato.
// Block scope: variables exist only inside the braces
let lives = 3;
if (true) {
const bonus = 10;
// only inside this block
let level = 2;
// only inside this block
console.log("Inside:", bonus, level);
}
console.log("Lives:", lives);
// The following would be ReferenceError if uncommented:
// console.log(bonus, level);

TDZ (esempio sicuro)
TDZ: una variabile let/const non può essere letta prima della riga della sua dichiarazione; ciò previene molti bug.
// TDZ: accessing let/const before declaration throws ReferenceError
try {
// Uncommenting next line would throw:
// console.log(theme);
// ReferenceError (TDZ)
let theme = "dark";
console.log("Theme after declare:", theme);
} catch (e) {
console.log("Caught:", e.message);
}

Nomi e suggerimenti
Nomenclatura:
- Usi nomi chiari per i dati (userName, score).
- Usi verbi per le funzioni (computeTotal).
- Mantenga lo scope ristretto; dichiari le variabili vicino al loro utilizzo.

Quiz su let e const
Verifica rapida: scope di blocco e riassegnazione.

Riepilogo
Riepilogo: preferisca const, usi let quando deve riassegnare il valore ed eviti var. Lo scope di blocco mantiene le variabili locali e la TDZ previene i bug dovuti all'accesso anticipato.

Domande Frequenti
La lezione «let, const ed evitare var» è gratuita?
Sì — il testo completo di «let, const ed evitare var» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso JavaScript Academy, passa a CoddyKit PRO. Il corso JavaScript Academy include 3 lezioni in totale.
Cosa imparerò in «let, const ed evitare var»?
Impari le basi di let e const, perché evitare var, lo scope di blocco e una prima introduzione alla temporal dead zone (TDZ). Eserciti JavaScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare JavaScript Academy?
Non è richiesta alcuna esperienza precedente. JavaScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 3.
Quanto tempo richiede la lezione «let, const ed evitare var»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione JavaScript Academy?
Sì. Ogni lezione JavaScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- let, const ed evitare var
- Scope di blocco, funzione e modulo e TDZ
- Nomi, leggibilità e problemi comuni