JavaScriptPytanie 08 z 36
What is closure?
Co to closure?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Closure oznacza, że funkcja pamięta scope, w którym została utworzona.
JavaScript
function createCounter() {
let count = 0;
return function () {
count++;
return count;
};
}
const counter = createCounter();
counter(); // 1
counter(); // 2
counter(); // 3Mimo że createCounter() już się zakończył, wewnętrzna funkcja nadal ma dostęp do count.
Zastosowania:
- prywatny state,
- callbacki,
- factory functions,
- event handlery,
- memoizacja.
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Powiązane pytania
- B-P07 · Co to jest domknięcie, czyli closure? — JavaScript, TypeScript i Node.js
Przećwicz w kodzie
- Napisz debounce — uruchamia testy w przeglądarce