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ę:

javascriptlet test = function() {
  console.log('!');
}

Odwołajmy się do tej funkcji przed jej definicją:

javascripttest(); // wyświetli błąd w konsoli, czyli Function Expression

let test = function() {
  console.log('!');
}

Oto kolejny przykład:

javascriptfunc(); // wyświetli '!', czyli Function Declaration

function func() {
  console.log('!');
}

Postawmy plus przed naszą funkcją:

javascriptfunc(); // 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.

Задание 1

Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:

javascript+function func() {
  console.log('!');
}
Задание 4

Określ, czy przedstawiona funkcja jest Function Declaration czy Function Expression:

javascriptfunction func() {
  console.log('!');
}