Middle
функција debounce(callback, delay) {}
sobes.tech АИ
Одговор од АИ
Funkcija debounce omogućava ograničenje učestalosti poziva prosleđene funkcije callback. Ona odlaže izvršenje callback dok ne prođe zadati interval delay bez novih poziva. Ovo je korisno, na primer, pri obradi događaja unosa ili skrolovanja, kako se funkcija ne bi pozivala prečesto.
Primer implementacije u JavaScript-u:
function debounce(callback, delay) {
let timerId;
return function(...args) {
clearTimeout(timerId);
timerId = setTimeout(() => {
callback.apply(this, args);
}, delay);
}
// Upotreba:
const debouncedFunc = debounce(() => console.log('Poziv!'), 300);
window.addEventListener('resize', debouncedFunc);
U ovom primeru, callback će biti pozvan samo nakon što se događaj resize ne dogodi tokom 300 ms.