Sobes.tech
Middle+

Pratik görev: debounce fonksiyonunu uygulayın

sobes.tech yapay zeka

AI'dan gelen yanıt

Функция debounce ограничивает частоту вызова переданной функции, вызывая её только после того, как прошло определённое время с последнего вызова. Это полезно, например, при обработке событий ввода или прокрутки.

Пример реализации debounce на JavaScript:

function debounce(fn, delay) {
  let timeoutId;
  return function(...args) {
    clearTimeout(timeoutId);
    timeoutId = setTimeout(() => {
      fn.apply(this, args);
    }, delay);
  };
}

// Использование:
const onResize = debounce(() => {
  console.log('Resize event handled');
}, 300);

window.addEventListener('resize', onResize);

В этом примере функция onResize будет вызвана не чаще, чем раз в 300 мс после последнего события resize.