Rozdíl deklarací funkce
Oba způsoby deklarace funkce jsou ekvivalentní, ale existuje podstatný rozdíl: funkce deklarované jako Function Declaration budou přístupné, i když na ně odkazujeme předtím, než byly deklarovány.
Podívejte se na příklad:
// Odkazujeme na funkci před její deklarací:
func(); //vypíše '!'
function func() {
console.log('!');
}
Funkční výrazy jsou vytvářeny v okamžiku provádění kódu a nejsou přístupné výše. Proto takový kód vyhodí chybu:
func(); //chyba, taková funkce ještě neexistuje!
let func = function() {
console.log('!');
};
Vytvořte funkci jako Function Declaration. Ověřte, že bude přístupná nad místem své deklarace.
Vytvořte funkci jako Function Expression. Ověřte, že nebude přístupná nad místem své deklarace.