Jak zkontrolovat typ funkce v JavaScriptu
V úlohách níže budete muset určit, zda je funkce definována jako Function Declaration nebo Function Expression.
V jednoduchých případech to není obtížné udělat vizuálně. Ale jak zkontrolovat, že jste to udělali správně? Použijte rozdíl mezi Function Declaration a Function Expression: první mohou být volány před jejich definicí, a druhé - nemohou.
Předpokládejme, že máme takovou funkci:
let test = function() {
console.log('!');
}
Přistoupíme k této funkci před její definicí:
test(); // vypíše chybu do konzole, znamená Function Expression
let test = function() {
console.log('!');
}
Zde je další příklad:
func(); // vypíše '!', znamená Function Declaration
function func() {
console.log('!');
}
Před naši funkci dejme plus:
func(); // vypíše chybu do konzole, znamená Function Expression
+function func() {
console.log('!');
}
Protože funkce výše - je Function Expression a není přiřazena žádné proměnné, tak ji nelze nijak zavolat, protože pod jménem func bude nepřístupná.
Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:
let test = function func() {
console.log('!');
}
Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:
console.log(
function func() {
console.log('!');
}
);
Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:
+function func() {
console.log('!');
}
Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:
function func() {
console.log('!');
}