mardi, 21 juillet 2026
|

Étiquette : utils

💻 Code

Fonction debounce en JavaScript

Un utilitaire que j’utilise dans tous mes projets pour limiter les appels répétés.

📄 debounce.js JAVASCRIPT
/**
 * Retarde l'exécution de fn jusqu'à ce que
 * wait ms se soient écoulés sans nouvel appel.
 */
function debounce(fn, wait = 300) {
  let timer;
  return function (...args) {
    clearTimeout(timer);
    timer = setTimeout(() => fn.apply(this, args), wait);
  };
}

// Usage
const onSearch = debounce((query) => {
  console.log("Searching:", query);
}, 400);

document.querySelector("#search").addEventListener("input", (e) => {
  onSearch(e.target.value);
});