Что такое выражение функции и объявление функции?

В JavaScript существуют два основных способа создания функций: объявление функции (function declaration) и выражение функции (function expression).

Короткий ответ

Что ответить на собеседовании

В JavaScript существуют два основных способа создания функций: объявление функции (function declaration) и выражение функции (function expression).

Подробный разбор

Ответ с пояснениями

В JavaScript существуют два основных способа создания функций: объявление функции (function declaration) и выражение функции (function expression).

  • Объявление функции — это классический способ, когда функция объявляется с ключевым словом function и именем:
function greet() {
  console.log('Hello');
}

Объявления функций поднимаются (hoisted) в начало своей области видимости, поэтому их можно вызывать до определения в коде.

  • Выражение функции — это когда функция создаётся как часть выражения и может быть анонимной или именованной:
const greet = function() {
  console.log('Hello');
};

Выражения функций не поднимаются, поэтому их нельзя вызвать до того, как они определены в коде.

Разница в области видимости и поднятии влияет на порядок вызова и доступность функций. Выражения функций часто используются для создания функций-замыканий или передачи функций как аргументов.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее