Funzione come variabile in JavaScript
Quindi, nella lezione precedente abbiamo scoperto, che riferendosi a una funzione senza parentesi tonde, otteniamo il suo codice sorgente.
In realtà è molto più interessante. In JavaScript, a differenza di altri linguaggi, le funzioni sono valori di variabili come i numeri, stringhe e array.
Diamo un'occhiata a un esempio. Supponiamo di avere,
ad esempio, una funzione func:
function func() {
console.log('!');
}
In realtà non abbiamo una funzione func.
Abbiamo una variabile func che memorizza
al suo interno il codice sorgente della funzione.
Possiamo, ad esempio, sovrascrivere la variabile
func con qualcos'altro, ad esempio,
una stringa. In questo caso la funzione func
non sarà più una funzione, ma una stringa.
Guardate l'esempio:
function func() {
console.log('!');
}
func(); // visualizzerà '!'
func = 'string'; // sovrascriviamo la variabile func
console.log(func); // visualizzerà 'string'
Create una funzione func che
restituisca tramite return una stringa qualsiasi.
Visualizzate in console il risultato della funzione func.
Visualizzate in console il codice sorgente della funzione func.
Assegnate alla variabile func il numero 123,
sovrascrivendo così la funzione in questa variabile.
Visualizzate in console il nuovo valore della variabile func.