Sobes.tech
Middle

funzione debounce(callback, delay) {}

sobes.tech AI

Risposta dell'AI

La funzione debounce permette di limitare la frequenza di chiamata della funzione callback passata. Ritarda l'esecuzione di callback fino a quando non trascorre un intervallo delay senza nuove chiamate. Questo è utile, ad esempio, nella gestione di eventi di input o di scorrimento, per non chiamare la funzione troppo frequentemente.

Esempio di implementazione in JavaScript:

function debounce(callback, delay) {
  let timerId;
  return function(...args) {
    clearTimeout(timerId);
    timerId = setTimeout(() => {
      callback.apply(this, args);
    }, delay);
  };
}

// Utilizzo:
const debouncedFunc = debounce(() => console.log('Chiamata!'), 300);
window.addEventListener('resize', debouncedFunc);

In questo esempio, callback verrà chiamato solo dopo che l'evento resize avrà smesso di verificarsi per 300 ms.