Takojšnji klic funkcije v JavaScriptu
Zdaj bomo obravnavali tehniko, ki omogoča klic funkcije takoj na mestu njene deklaracije. Ta konstrukcija se imenuje Immediately Invoked Function Expression (IIFE).
Poglejmo si primer. Recimo, da imamo takšno funkcijsko izražanje:
let func = function() {
console.log('!');
};
func(); // izpiše '!'
Zdaj pa ne dodelimo naše funkcije spremenljivki, ampak jo pokličimo takoj, "na mestu". Za to postavimo okrogle oklepaje za funkcijo:
+function() {
console.log('!'); // izpiše '!'
}();
Prisotnost plusa je v tem primeru obvezen pogoj, ker brez njega funkcija postane Function Declaration, teh pa na mestu (še več brez imena) ni mogoče klicati. Seveda lahko namesto plusa uporabimo karkoli, - glavno je, da je naša funkcija funkcijsko izražanje.
Določite, ne da bi zagnali kodo, kaj se bo izpisalo v konzolo:
!function() {
console.log('!');
}();
Določite, ne da bi zagnali kodo, kaj se bo izpisalo v konzolo:
function() {
console.log('!');
}();