Sobes.tech
Назад к вопросам
Middle
2

В чём разница между function declaration и function expression?

Компании, где спрашивали
X-Notes

Ответ от нейросети

sobes.tech AI

Function Declaration — это объявление функции с именем, которое поднимается (hoisted) в область видимости. Такие функции можно вызывать до их определения в коде.

function greet() {
  console.log('Hello');
}
greet(); // работает

Function Expression — это присваивание функции (анонимной или именованной) переменной. Такие функции не поднимаются, и их можно вызвать только после определения.

const greet = function() {
  console.log('Hello');
};
greet(); // работает

Разница в том, что function declaration создаёт функцию на этапе компиляции, а function expression — во время выполнения, что влияет на порядок вызовов и область видимости.