Jak sprawdzić typ funkcji w JavaScript
W poniższych zadaniach będziesz musiał określić czy funkcja jest zdefiniowana jako Function Declaration czy Function Expression.
W prostych przypadkach nie jest to trudne do zrobienia wizualnie. Ale jak sprawdzić, czy zrobiłeś to poprawnie? Wykorzystaj różnicę między Function Declaration a Function Expression: pierwsze mogą być wywołane przed ich definicją, a drugie - nie.
Załóżmy, że mamy taką funkcję:
let test = function() {
console.log('!');
}
Odwołajmy się do tej funkcji przed jej definicją:
test(); // wyświetli błąd w konsoli, czyli Function Expression
let test = function() {
console.log('!');
}
Oto kolejny przykład:
func(); // wyświetli '!', czyli Function Declaration
function func() {
console.log('!');
}
Postawmy plus przed naszą funkcją:
func(); // wyświetli błąd w konsoli, czyli Function Expression
+function func() {
console.log('!');
}
Ponieważ funkcja powyżej to Function Expression i nie jest przypisana do żadnej zmiennej, to nie można jej w żaden sposób wywołać, ponieważ pod nazwą func będzie niedostępna.
Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:
let test = function func() {
console.log('!');
}
Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:
console.log(
function func() {
console.log('!');
}
);
Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:
+function func() {
console.log('!');
}
Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:
function func() {
console.log('!');
}