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:

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

Přistoupíme k této funkci před její definicí:

javascripttest(); // vypíše chybu do konzole, znamená Function Expression

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

Zde je další příklad:

javascriptfunc(); // vypíše '!', znamená Function Declaration

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

Před naši funkci dejme plus:

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

Задание 1

Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:

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

Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:

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

Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:

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

Určete, zda je prezentovaná funkce Function Declaration nebo Function Expression:

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