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:

javascriptfunction 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:

javascriptfunction func() {
  console.log('!');
}
func(); // ispisuje '!'

func = 'string'; // prepisujemo promenljivu func
console.log(func); // ispisuje 'string'
Задание 1

Napravite funkciju func, koja će vraćati pomoću return bilo koji string.

Задание 2

Ispišite rezultat rada funkcije func u konzolu.

Задание 3

Ispišite izvorni kod funkcije func u konzolu.

Задание 4

Zabeležite u promenljivu func broj 123, čime prepisujete funkciju iz ove promenljive. Ispišite novu vrednost promenljive func u konzolu.