Sobes.tech
Back to questions
Junior — Middle
104

Можешь привести пример, когда в JavaScript используется замыкание для хранения данных или создания приватных методов?

Answer from AI

sobes.tech AI

В JavaScript замыкания часто используются для создания приватных данных и методов, которые недоступны извне.

Пример:

function Counter() {
  let count = 0; // приватная переменная

  return {
    increment() {
      count++;
      return count;
    },
    getCount() {
      return count;
    }
  };
}

const counter = Counter();
console.log(counter.increment()); // 1
console.log(counter.getCount());  // 1
console.log(counter.count);       // undefined — доступ к count снаружи невозможен

Здесь count хранится в замыкании функции Counter и не доступен напрямую, что обеспечивает инкапсуляцию данных.