Izraz levo od funkcije v JavaScript
Oglejmo si naslednjo kodo:
+function func() {
console.log('!');
}
Kot že veste, je ta funkcija funkcionalni izraz, kljub temu, da ima določeno ime (ugotovili smo že, da prisotnost imena sploh ni merilo). Odstranimo ta plus - in dobimo Function Declaration:
function func() {
console.log('!');
}
Postavimo + v vrstici pred
funkcijo - spet bo postala Function Expression:
+
function func() {
console.log('!');
}
In zdaj postavimo številko 1
in podpičje za plusom - naša funkcija bo postala Function
Declaration:
+1;
function func() {
console.log('!');
}
Zakaj je tako: ker je v prvi vrstici napisana en zaključen ukaz, zaprt s podpičjem. Zato ta ukaz nikakor ne vpliva na našo funkcijo.
Pravzaprav lahko podpičje odstranimo, saj v JavaScript ni obvezno - funkcija bo vseeno ostala Function Declaration:
+1
function func() {
console.log('!');
}
Če pa za 1 dodamo še en
plus, bo funkcija postala Function Expression:
+1+
function func() {
console.log('!');
}
Zakaj je tako: ker je v prvi vrstici nekončan izraz - stoji plus in za nim nič. Zato tolmač JavaScript meni, da se ta plus nanaša na vrstico spodaj, torej na našo funkcijo.
Če pa je v prvi vrstici končan izraz, potem JavaScript samodejno postavi podpičje in ta izraz nikakor ne vpliva na našo funkcijo.
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:
-1;
function func() {
console.log('!');
}
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
-1
function func() {
console.log('!');
}
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
1
function func() {
console.log('!');
}
Določite, ali je predstavljena funkcija Function Declaration ali Function Expression:
-1-
function func() {
console.log('!');
}