Ako skontrolovať typ funkcie v JavaScript
V úlohách nižšie budete musieť určiť, či je funkcia definovaná ako Function Declaration alebo Function Expression.
V jednoduchých prípadoch to nie je ťažké urobiť vizuálne. Ale ako skontrolovať, že ste to urobili správne? Využite rozdiel medzi Function Declaration a Function Expression: prvé môžu byť volané vyššie ako ich definícia, a druhé - nie.
Majme takúto funkciu:
let test = function() {
console.log('!');
}
Pristúpme k tejto funkcii pred jej definíciou:
test(); // vypíše chybu do konzoly, znamená Function Expression
let test = function() {
console.log('!');
}
Tu je ďalší príklad:
func(); // vypíše '!', znamená Function Declaration
function func() {
console.log('!');
}
Dajme pred našu funkciu plusík:
func(); // vypíše chybu do konzoly, znamená Function Expression
+function func() {
console.log('!');
}
Keďže funkcia vyššie je Function Expression a nie je priradená žiadnej premennej, tak ju nemožno nijako volať, pretože pod menom func bude nedostupná.
Určte, či je reprezentovaná funkcia Function Declaration alebo Function Expression:
let test = function func() {
console.log('!');
}
Určte, či je reprezentovaná funkcia Function Declaration alebo Function Expression:
console.log(
function func() {
console.log('!');
}
);
Určte, či je reprezentovaná funkcia Function Declaration alebo Function Expression:
+function func() {
console.log('!');
}
Určte, či je reprezentovaná funkcia Function Declaration alebo Function Expression:
function func() {
console.log('!');
}