Назад к вопросам
Middle
5
Что такое замыкание? Можешь рассказать?
Компании, где спрашивали
Ростелеком
Ответ от нейросети
sobes.tech AI
Замыкание — это функция вместе с лексическим окружением, в котором она была создана. Это значит, что функция «запоминает» переменные из внешней области видимости, даже если эта внешняя функция уже завершила выполнение.
Пример на JavaScript:
function makeCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Здесь внутренняя функция сохраняет доступ к переменной count из внешней функции makeCounter, создавая замыкание. Это позволяет сохранять состояние между вызовами функции.