Logo

Frontend Blog

Про Frontend разработку
Telegram
YouTube
Boosty

Debounce, throttle, queue

06 июня, 2021

Краткая напоминалка:

  • Debounce - функция выполнится через 2 секунды после того, как пользователь перестал скроллить страницу
  • Throttle - функция будет выполняться каждые 2 секунды пока пользователь скроллит
  • Queue - поставить все функции скролла в очередь с промежутком 2 секунды

Пример кода, который мне понравился (Но там нет typescript и функция в debounce не принимает в себя параметры):

https://medium.com/ghostcoder/debounce-vs-throttle-vs-queue-execution-bcde259768

Более удачные примеры стоит посмотреть в Lodash или в библиотеках кастомных хуков для React (вроде useDebounce или всё вместе в https://usehooks.com/)

Моё видео на YouTube - Обзор функций Debounce, Throttle и Queue в JavaScript. Примеры кода.