ReferencedebounceTime
Reference · 17
debounceTime
debounceTime
Эмитит значение только после паузы заданной длины.
Сигнатура
debounceTime(dueTime: number, scheduler?: SchedulerLike): MonoTypeOperatorFunction
Маркеры
in: a-b---------c-d-|
debounce(20): -------b-------d-|
Что делает
На каждое next сбрасывает внутренний таймер и стартует заново. Если за dueTime новых значений не пришло — эмитит последнее. Если поток завершается с непогашенным таймером — последнее значение тоже эмитится перед complete.
Когда использовать
Typeahead/поиск, валидация формы по ходу ввода, resize/scroll-обработчики, любое «не делай ничего, пока пользователь не закончил».
Подводный камень
Отличие от throttleTime: debounce ждёт тишины, throttle — пропускает первый и режет последующие в окне.
См. также
throttleTime, auditTime, distinctUntilChanged
script.ts
CONSOLE · Console Output
Нажмите на запуск, чтобы увидеть результат...