Junior — Middle
Pouvez-vous donner un exemple où en JavaScript, une fermeture est utilisée pour stocker des données ou créer des méthodes privées?
sobes.tech IA
Réponse de l'IA
В 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 и не доступен напрямую, что обеспечивает инкапсуляцию данных.