Middle
debounce funkcija(callback, delay) {}
sobes.tech AI
Atsakymas iš AI
Debounce funkcija leidžia apriboti perduotos callback funkcijos kvietimo dažnumą. Ji atideda callback vykdymą iki tol, kol praeis nustatytas delay intervalas be naujų kvietimų. Tai naudinga, pavyzdžiui, apdorojant įvesties ar slinkimo įvykius, kad funkcija būtų kviečiama ne per dažnai.
JavaScript pavyzdys:
function debounce(callback, delay) {
let timerId;
return function(...args) {
clearTimeout(timerId);
timerId = setTimeout(() => {
callback.apply(this, args);
}, delay);
}
// Naudojimas:
const debouncedFunc = debounce(() => console.log('Kvietimas!'), 300);
window.addEventListener('resize', debouncedFunc);
Šiame pavyzdyje callback bus iškviesta tik tada, kai resize įvykis neįvyksta 300 ms.