Funksie-uitdrukking aan die linkerkant in JavaScript
Kom ons kyk na die volgende kode:
+function func() {
console.log('!');
}
Soos jy reeds weet, is hierdie funksie 'n funksionele uitdrukking, ten spyte van die feit dat dit 'n naam het (ons het reeds vasgestel dat die teenwoordigheid van 'n naam glad nie 'n kriteria is nie). Verwyder hierdie plusteken - en ons kry 'n Funksieverklaring (Function Declaration):
function func() {
console.log('!');
}
Kom ons sit die + op die lyn voor
die funksie - dit sal weer 'n Funksie-uitdrukking (Function Expression) word:
+
function func() {
console.log('!');
}
En nou sit ons die getal 1
en 'n kommapunt na die plusteken - ons funksie sal 'n Funksieverklaring
word:
+1;
function func() {
console.log('!');
}
Hoekom so: omdat daar op die eerste reël een voltooide opdrag geskryf is, afgesluit met 'n kommapunt. Daarom beïnvloed hierdie opdrag op geen manier ons funksie nie.
Eintlik kan die kommapunt verwyder word, aangesien dit in JavaScript nie verpligtend is nie - die funksie sal nietemin 'n Funksieverklaring bly:
+1
function func() {
console.log('!');
}
Maar as ons nog 'n
plusteken na die 1 insit, sal die funksie 'n Funksie-uitdrukking word:
+1+
function func() {
console.log('!');
}
Hoekom so: omdat daar op die eerste reël 'n onvoltooide uitdrukking is - daar is 'n plusteken en niks daarna nie. Daarom dink die JavaScript-tolken dat hierdie plusteken na die reël onder verwijs, dit wil sê na ons funksie.
As daar egter 'n voltooide uitdrukking op die eerste reël staan, plaas JavaScript outomaties 'n kommapunt daarna en hierdie uitdrukking beïnvloed op geen manier ons funksie nie.
Bepaal of die voorgestelde funksie 'n Funksieverklaring (Function Declaration) of 'n Funksie-uitdrukking (Function Expression) is:
-
function func() {
console.log('!');
}
Bepaal of die voorgestelde funksie 'n Funksieverklaring (Function Declaration) of 'n Funksie-uitdrukking (Function Expression) is:
-1;
function func() {
console.log('!');
}
Bepaal of die voorgestelde funksie 'n Funksieverklaring (Function Declaration) of 'n Funksie-uitdrukking (Function Expression) is:
-1
function func() {
console.log('!');
}
Bepaal of die voorgestelde funksie 'n Funksieverklaring (Function Declaration) of 'n Funksie-uitdrukking (Function Expression) is:
1
function func() {
console.log('!');
}
Bepaal of die voorgestelde funksie 'n Funksieverklaring (Function Declaration) of 'n Funksie-uitdrukking (Function Expression) is:
-1-
function func() {
console.log('!');
}