Até agora, aprendemos a criar elementos dinamicamente e a usar delegação de eventos.
Mas existe uma pergunta importante que todo desenvolvedor precisa fazer:
Como manipular o DOM sem deixar a página lenta?
Nesta aula, vamos entender o impacto das operações no DOM e aprender práticas que melhoram a performance das aplicações.
🎯 Objetivo da aula
Ao final desta aula, você será capaz de:
- Entender por que o DOM é “caro”
- Evitar manipulações desnecessárias
- Reduzir reflows e repaints
- Escrever código mais eficiente
- Melhorar a experiência do usuário
Por que o DOM pode ser lento?
O DOM não é apenas JavaScript — ele representa a estrutura visual da página.
Sempre que você:
- Cria um elemento
- Insere no DOM
- Altera estilos
- Remove elementos
O navegador pode precisar:
- Recalcular o layout (reflow)
- Redesenhar a tela (repaint)
Erro comum: manipular o DOM em excesso
Veja este exemplo:
const lista = document.getElementById("lista");
for (let i = 0; i < 100; i++) {
const li = document.createElement("li");
li.textContent = "Item " + i;
lista.appendChild(li);
}
Funciona, mas cada appendChild toca o DOM.
Boa prática: minimizar acessos ao DOM
Uma estratégia melhor é criar tudo primeiro e inserir de uma vez:
const lista = document.getElementById("lista");
const fragment = document.createDocumentFragment();
for (let i = 0; i < 100; i++) {
const li = document.createElement("li");
li.textContent = "Item " + i;
fragment.appendChild(li);
}
lista.appendChild(fragment);
DocumentFragment permite montar o conteúdo fora do DOM e inserir tudo de uma vez. Evite consultas repetidas
Outro erro comum:
for (let i = 0; i < 10; i++)
{
document.getElementById("status").textContent = i;
} Melhor:
const status = document.getElementById("status");
for (let i = 0; i < 10; i++)
{
status.textContent = i;
}
Prefira classes a estilos inline
Alterar vários estilos inline causa múltiplos repaints:
element.style.color = "red"; element.style.fontSize = "20px"; element.style.margin = "10px"; Melhor:
.destaque { color: red; font-size: 20px; margin: 10px; } element.classList.add("destaque"); Leitura e escrita no DOM
Misturar leitura e escrita no DOM pode causar problemas de performance:
const altura = element.offsetHeight;
element.style.height = altura + 10 + "px"; Sempre que possível:
- Leia tudo primeiro
- Depois escreva tudo
Delegação de eventos também ajuda
Como vimos na aula anterior:
- Menos listeners
- Menos memória
- Mais performance
Performance no DOM não é só sobre velocidade — é sobre boas decisões.
Resumo da aula para nunca mais esquecer
- Manipular o DOM é custoso
- Evite alterações repetidas
- Use
DocumentFragmentquando possível - Reduza consultas ao DOM
- Prefira classes CSS a estilos inline
Na próxima aula, vamos aprender sobre manipulação de classes CSS, fechando esse bloco com chave de ouro.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Ultima Online
Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras
Inteligência artificial
O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.
Tetris
Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.
Tetris
O título Tetris detém o recorde de jogo mais adaptado de todos os tempos. No total foram mais de 60 plataformas diferentes que receberam alguma versão do quebra-cabeças criado por Alexey Pajitnov. Conheça mais sobre este incrível jogo clicando aqui.
Senhas
Digitar senhas em computadores de uso coletivo é extremamente perigoso, pois além de softwares de monitoramento, existem dispositivos de hardware que podem capturar suas senhas. Evite ao máximo acessar sites de bancos a partir destes computadores. Veja mais aqui.










