Назад к вопросам
Simbirsoft
Middle
2
function debounce(callback, delay) {}
Компании, где спрашивали
Ответ от нейросети
sobes.tech 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 мс.