Assegnare una variabile costante ad una funzione in Javascript
Spesso mi è capitato di dover dichiarare un valore da utilizzare successivamente all’interno di una funzione, potrebbe poi esserci la necessità che tale valore possa essere utilizzato nuovamente nel momento in cui la funzione venga chiamata più volte.
Pensiamo ad esempio ad una funzione che fa da contatore e restituisce un ID differente ogni volta che viene chiamata, certo potremmo dichiarare una variabile globale ma ciò sicuramente “inquinerebbe” il namespace inutilmente.
Possiamo però dichiarare delle proprietà personalizzate della funzione:
contatore.id = 0;
function contatore() {
return contatore.id++;
}
contatore(); // restituisce 0
contatore(); // restituisce 1
contatore(); // restituisce 2 .... ecc
function contatore() {
return contatore.id++;
}
contatore(); // restituisce 0
contatore(); // restituisce 1
contatore(); // restituisce 2 .... ecc