Aller au contenu principal

Le site est en cours de migration vers la solution la plus adaptée.

Aller au contenu principal

Fonction debounce en JavaScript vanilla

Implémentation classique du debounce pour optimiser les événements à haute fréquence comme la saisie ou le scroll.

Langage

javascript

Accès

Libre

/**
 * Debounce function to limit execution frequency
 * @param {Function} func - Function to debounce
 * @param {number} delay - Delay in milliseconds
 */
function debounce(func, delay) {
  let timeoutId;
  return function (...args) {
    clearTimeout(timeoutId);
    timeoutId = setTimeout(() => func.apply(this, args), delay);
  };
}

// Usage example
const search = debounce((query) => {
  console.log("Search:", query);
}, 300);

Plus de snippets javascript