Встречается на собеседованиях • сегодня

В чем разница между замыканием и контекстом

Замыкание (closure) — это функция, которая запоминает внешние переменные, даже если они вышли из области видимости. Пример:

javascript
function outer() {
  const x = 10;
  return function inner() {
    console.log(x); // Запоминает x из outer
  };
}
const fn = outer();
fn(); // 10

Контекст (this) — это объект, к которому относится выполняемая функция. Определяется в момент вызова:

javascript
const obj = {
  name: 'John',
  greet() {
    console.log(this.name);
  }
};
obj.greet(); // John (контекст — obj)

Ключевые отличия:

  1. Замыкание — доступ к внешним переменным, контекст — доступ к свойствам объекта через this
  2. Замыкание статично (запоминает переменные на момент создания), контекст динамичен (зависит от вызова)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы