Middle
debounce ֆունկցիա(callback, delay) {}
sobes.tech AI
Պատասխան AI-ից
Debounce գործառույթը թույլ է տալիս սահմանափակել փոխանցված callback ֆունկցիայի կանչման հաճախականությունը: Այն հետաձգում է callback-ի կատարմանը մինչև այն ժամանակը, երբ անցնի նշված delay միջակայքը առանց նոր կանչերի: Սա օգտակար է, օրինակ, մուտքային կամ սքրոլի իրադարձությունների մշակման ժամանակ, որպեսզի ֆունկցիան շատ հաճախ չկոչվի:
JavaScript-ում օրինակ՝
function debounce(callback, delay) {
let timerId;
return function(...args) {
clearTimeout(timerId);
timerId = setTimeout(() => {
callback.apply(this, args);
}, delay);
}
// Օգտագործում՝
const debouncedFunc = debounce(() => console.log('Հանգույց!'), 300);
window.addEventListener('resize', debouncedFunc);
Այս օրինակով, callback-ը կկոչվի միայն այն ժամանակ, երբ resize իրադարձությունը 300 մս-անցած ժամանակ դադարեցվի։