Middle
O que é um closure em JavaScript? Dê um exemplo.
sobes.tech IA
Resposta da IA
O encerramento em JavaScript é uma função que «lembra-se» do seu ambiente léxico, mesmo que seja chamada fora do seu escopo original. Isso permite que a função aceda às variáveis da função externa após esta ter terminado a sua execução.
Exemplo:
function makeCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Aqui, a função interna mantém o acesso à variável count da função externa makeCounter, criando um encerramento.