В чём разница между Function Declaration и Function Expression?
Уровень: Junior
Ответ
Function Declaration – это объявление функции в общем потоке кода с синтаксисом `function имя(...) { ... }`. Такая функция поднимается (hoisting) – её можно вызвать до места объявления. Function Expression – это функциональное выражение, когда функция создаётся в контексте какого-либо выражения (например, присваивания: `let fn = function(...) { ... };`). У Function Expression может не быть имени (анонимная функция) или быть имя для рекурсии. В отличие от деклараций, function expression не поднимаются – вызвать их до присвоения нельзя.