Ответ
В JavaScript есть два основных способа объявления функций:
-
Function Declaration (Объявление функции)
function sum(a, b) { return a + b; }- Функция доступна до её объявления в коде благодаря hoisting (поднятию).
- Создаёт именованную функцию в текущей области видимости.
-
Function Expression (Функциональное выражение)
const sum = function(a, b) { return a + b; };- Функция создаётся как часть выражения (например, присваивания).
- Её можно вызвать только после того, как выражение было выполнено.
- Частный случай — Arrow Function (Стрелочная функция):
const sum = (a, b) => a + b; - Имеет лексическое связывание
this(не создаёт собственный контекстthis). - Не имеет собственных псевдомассивов
argumentsиsuper. - Не может быть использована как конструктор (с оператором
new).