Sobes.tech
Junior — Middle

Pode explicar como é que a gestão de memória e a limpeza automática de objetos funcionam em JavaScript?

sobes.tech IA

Resposta da IA

No JavaScript, a gestão de memória ocorre automaticamente através do mecanismo de recolha de lixo (garbage collection). Quando são criados objetos, eles ocupam memória no heap. O coletor de lixo verifica periodicamente quais objetos não são mais utilizados — ou seja, não há referências a eles a partir do código ativo — e libera a memória que ocupam.

O algoritmo principal é a contagem de referências e a busca por objetos alcançáveis (mark-and-sweep). Por exemplo, se uma variável referencia um objeto, ele é considerado vivo. Se as referências desaparecem, o objeto torna-se um candidato à remoção.

Exemplo:

let obj = { name: "test" };
obj = null; // agora o objeto não é alcançável e será limpo pelo coletor de lixo

Assim, o programador não precisa liberar manualmente a memória, o que reduz a probabilidade de erros relacionados a vazamentos de memória.