📖
Performance

Debouncing

Atrasa execução de uma função até parar de ser chamada por N ms.

📚 O que é

A cada nova chamada, reinicia o timer. Só executa quando o usuário 'para' de agir. Ideal para search-as-you-type (só busca quando parou de digitar). Diferente de throttle (que limita a frequência).

✅ Quando usar

Search inputs. Autosave de formulários. Inputs que disparam API calls. Redimensionamento de janela para cálculos pesados.

🚫 Quando NÃO usar

Quando o usuário precisa de feedback imediato. Clicks de botão (use disabled state em vez de debounce). Quando throttle é mais apropriado.

👍 Prós
Reduz chamadas de API
Melhora UX (menos 'piscadas')
Simples de implementar
Melhora performance de rede
👎 Contras
Atrasa feedback
Pode sentir lento se delay muito alto
Precisa de cleanup para evitar memory leaks
🔗 Termos relacionados