Sobes.tech
Junior

Quando usare le variabili var, let e const?

sobes.tech AI

Risposta dell'AI

  • var: Se hai bisogno di una variabile con ambito di funzione o se vuoi fare l'hoisting con inizializzazione undefined. Metodo obsoleto, non raccomandato per nuovo codice.
  • let: Se hai bisogno di una variabile con ambito di blocco, che può essere ridefinita (cambiare il suo valore). Adatto nella maggior parte dei casi in cui il valore della variabile può cambiare.
  • const: Se hai bisogno di una variabile con ambito di blocco, il cui valore non può essere ridefinito dopo l'inizializzazione. Usato per valori che non devono cambiare durante l'esecuzione del codice (costanti, riferimenti a elementi DOM, funzioni).
// Esempio di utilizzo di let
let count = 0;
if (true) {
  let count = 1; // Nuova variabile in ambito di blocco
  console.log(count); // 1
}
console.log(count); // 0

// Esempio di utilizzo di const
const PI = 3.14159;
// PI = 3; // Errore: Assegnazione a variabile costante.

const user = { name: 'Alex' };
user.name = 'John'; // Permesso, si modifica la proprietà dell'oggetto, non il riferimento
console.log(user); // { name: 'John' }

// Esempio di utilizzo di var (non raccomandato)
var x = 10;
if (true) {
  var x = 20; // Ridefinisce la stessa variabile in ambito di funzione
  console.log(x); // 20
}
console.log(x); // 20