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.