
O que é Closure – Closure é um conceito da programação que se refere à habilidade de uma função se lembrar e acessar variáveis em um escopo externo, mesmo que após a execução dessa função se encerrar.
No artigo sobre Contexto de execução JavaScript e Contexto e Escopo no JavaScript, explicamos alguns conceitos importantes que facilitarão o que se abordará. Por exemplo, após a execução de uma função, seu contexto de execução se apaga da memória e, com isso, nenhuma variável ou parâmetro continuará existindo na memória.
O que é Closure
É uma função que está dentro de outra função com acesso às variáveis e parâmetros da função que a contém.
Vamos pegar o seguinte exemplo:
function createCounter() {
let counter = 0;
const myFunction = function () {
counter = counter + 1;
return counter;
}
return myFunction;
}
const increment = createCounter();
increment(); // 1
increment(); // 2
increment(); // 3
Se analisarmos o código após finalizar a execução da função createCounter, veremos que o counter não existe mais no contexto de execução, pois o garbage collection já removeu da memória tudo que tem dentro da função createCounter.
Você pode estar se perguntando: como o myFunction tem acesso ao counter?
Isso ocorre porque, quando uma função é declarada, ela contém uma definição de função e um Closure.
A melhor analogia que podemos ter de um Closure é que um Closure é como se fosse uma mochila.
Vamos entender agora, o que a função increment faz para conseguir achar o counter.
- Primeiro, ela vai executar e buscar pela variável
counterdentro do escopo demyFunction. Ele não irá encontrar, porquecounternão foi definido lá; - Depois, ele vai procurar no contexto global e não vai achar, porque não foi definido lá;
- Por último, ele vai procurar dentro do
Closuredele e ele vai encontrar.
Conclusão
É fundamental para compreender o que é Closure para entender o funcionamento interno das linguagens de programação, especialmente em JavaScript.
Ao entender como as funções podem acessar variáveis e parâmetros de escopos externos, mesmo após sua execução, os desenvolvedores podem escrever códigos mais eficientes e evitar erros.
Leia também: “10 Truques do NPM”

Café Codificado é um portal dinâmico e confiável criado especialmente para desenvolvedores. Nosso foco é entregar:
Dicas práticas para programação, produtividade, frameworks, testes, DevOps e muito mais;
Notícias atualizadas, acompanhando tendências e lançamentos do mundo da tecnologia, compiladas com relevância e sem jargões desnecessários.
O que você encontra aqui:
Artigos objetivos e comandáveis — Tutoriais, tutoriais passo-a-passo e dicas que vão direto ao ponto.
Cobertura das tecnologias que estão em alta — do universo da IA, computação em nuvem e segurança à engenharia de software e criatividade em código.
Conteúdo para todos os níveis — de iniciantes buscando praticidade, a profissionais em busca de insights estratégicos e aperfeiçoamento.
Comunidade ativa — textos humanizados, perguntinhas instigantes e espaço para você contribuir com reflexões e comentários.