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

Что такое замыкание в JS

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

javascript
function outer() {
  const x = 10;
  return function inner() {
    console.log(x); // x доступен благодаря замыканию
  };
}
const innerFn = outer();
innerFn(); // 10

Как это работает?

  • При создании функции inner она сохраняет ссылку на переменные из родительской функции (outer), даже после завершения её выполнения.
  • Замыкание позволяет создавать приватные переменные и методы (например, в модулях).

Пример с инкапсуляцией:

javascript
function counter() {
  let count = 0;
  return {
    increment() { count++; },
    getCount() { return count; }
  };
}
const c = counter();
c.increment();
console.log(c.getCount()); // 1
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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