Funkcija kao promenljiva u JavaScript-u
Dakle, u prethodnoj lekciji smo otkrili, da pristupanjem funkciji bez okruglih zagrada, dobijamo njen izvorni kod.
Zapravo, sve je mnogo zanimljivije. U JavaScript-u, za razliku od drugih jezika, funkcije su iste vrednosti promenljivih, kao brojevi, stringovi i nizovi.
Pogledajmo primer. Neka imamo,
na primer, funkciju func:
function func() {
console.log('!');
}
Zapravo, mi nemamo funkciju func.
Imamo promenljivu func, koja čuva
u sebi izvorni kod funkcije.
Možemo, na primer, prepisati promenljivu
func nečim drugim, na primer,
stringom. U ovom slučaju funkcija func
više neće biti funkcija, već će biti string.
Pogledajte primer:
function func() {
console.log('!');
}
func(); // ispisuje '!'
func = 'string'; // prepisujemo promenljivu func
console.log(func); // ispisuje 'string'
Napravite funkciju func, koja će
vraćati pomoću return bilo koji string.
Ispišite rezultat rada funkcije func
u konzolu.
Ispišite izvorni kod funkcije func
u konzolu.
Zabeležite u promenljivu func broj 123,
čime prepisujete funkciju iz ove promenljive.
Ispišite novu vrednost promenljive func
u konzolu.