Categories
funzioni linguaggio javascript

Definire variabili e costanti

In JavaScript esistono tre parole chiave per definire reference, variabili, oggetti e/o funzioni:

var prova1;
let prova2;
const prova3;
  • var è deprecata
  • let indica un reference variabile
  • const indica un reference costante

Vediamo un esempio d’uso di const , dove si evidenzia qualcosa di strano:

const auto = {ruote:4, modello:"tigra", colore:"bianco"};
auto.colore = "rosso"; // ok, oggetto modificabile
auto = {}; // errore di riassegnazione sul reference costante
auto = {ruote:4, modello:"tigra", colore:"bianco"}; // errore ...

const non serve a definire costanti, ma indica che:

  • non si può modificare la destinazione del reference (nell’esempio: auto)
  • viceversa, è consentito modificare il contenuto dell’oggetto (nell’esempio: auto.colore)

Per rendere non modificabile anche le proprietà dell’oggetto è possibile usare un metodo Object.freeze()

const auto = {ruote:4, modello:"tigra", colore:"bianco"};
Object.freeze(auto);
auto.colore = "rosso"; // Errore

Leave a Reply