Kako preveriti tip funkcije v JavaScript
V spodnjih nalogah boste morali določiti, ali je funkcija definirana kot Function Declaration ali Function Expression.
V preprostih primerih to ni težko narediti vizualno. Toda kako preveriti, ali ste to naredili pravilno? Uporabite razliko med Function Declaration in Function Expression: prve je mogoče poklicati pred njihovo definicijo, druge pa ne.
Recimo, da imamo takšno funkcijo:
let test = function() {
console.log('!');
}
Obrnimo se na to funkcijo pred njeno definicijo:
test(); // bo izpisalo napako v konzolo, kar pomeni Function Expression
let test = function() {
console.log('!');
}
Tu je še en primer:
func(); // bo izpisalo '!', kar pomeni Function Declaration
function func() {
console.log('!');
}
Dodajmo plus pred našo funkcijo:
func(); // bo izpisalo napako v konzolo, kar pomeni Function Expression
+function func() {
console.log('!');
}
Ker je zgornja funkcija Function Expression in ni prirejena nobeni spremenljivki, je je ni mogoče na noben način poklicati, saj po imenu func ne bo dostopna.
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
let test = function func() {
console.log('!');
}
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
console.log(
function func() {
console.log('!');
}
);
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
+function func() {
console.log('!');
}
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
function func() {
console.log('!');
}