Розніца аб'яў функцыі

Абодва спосабы аб'явы функцыі эквівалентныя, але ёсць істотная розніца: функцыі, аб'яўленыя як Function Declaration, будуць даступныя, нават калі звярнуцца да іх да таго, як яны былі аб'яўлены.

Глядзіце прыклад:

javascript// Звяртаемся да функцыі да яе аб'явы:
func(); //вывядзе '!'

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

А функцыянальныя выразы ствараюцца ў момант выканання кода і недаступныя вышэй. Таму такi код выдасць памылку:

javascriptfunc(); //памылка, такой функцыі яшчэ няма!

let func = function() {
  console.log('!');
};
Задание 1

Стварыце функцыю як Function Declaration. Праверце тое, што яна будзе даступная вышэй месца сваёй аб'явы.

Задание 2

Стварыце функцыю як Function Expression. Праверце тое, што яна не будзе даступная вышэй месца сваёй аб'явы.