Sobes.tech
Middle

Какво е debounce?

sobes.tech AI

Отговор от AI

Debounce — това е техника за програмиране, която ограничава честотата на извикване на функция. Тя се използва, за да се изпълнява функцията само след като е минало определено време от последното ѝ извикване. Това е полезно, например, при обработка на събития за въвеждане от потребителя (например при писане на текст), за да не се извиква функцията при всяко натискане на клавиш, а само след като потребителят спре да пише.

Пример на JavaScript:

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

const onInput = debounce(() => {
  console.log('Въвеждането е приключило');
}, 300);

inputElement.addEventListener('input', onInput);