Sobes.tech
Middle

funksiya debounce(callback, delay) {}

sobes.tech AI

AIdan javob

Debounce funksiyasi, o'tkazilgan callback funksiyasining chaqirilish chastotasini cheklash imkonini beradi. U callbackni bajarilishini delay belgilangan intervallar davomida yangi chaqiriqlar bo'lmagan taqdirda kechiktiradi. Bu, masalan, kiritish yoki skroll qilish hodisalarini ishlashda, funksiyani juda tez-tez chaqirmaslik uchun foydalidir.

JavaScriptda amalga oshirish misoli:

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

// Foydalanish:
const debouncedFunc = debounce(() => console.log('Chaqirildi!'), 300);
window.addEventListener('resize', debouncedFunc);

Ushbu misolda, callback faqat resize hodisasi 300 ms davomida davom etmaganda chaqiriladi.