Debounce или throttle для поиска
Вопрос
Поиск с подсказками должен отправлять запрос, когда пользователь перестал печатать на 300 мс. Что нужно?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Варианты ответа
- throttle на 300 мс
setIntervalна 300 мсrequestAnimationFrame- debounce на 300 мсправильный ответ
Разбор
debounce откладывает вызов, пока события продолжаются, и срабатывает через заданную паузу после последнего. Это ровно «перестал печатать на 300 мс». throttle вызывал бы функцию раз в 300 мс прямо во время набора: лишние запросы с недописанным словом. setInterval стреляет независимо от ввода. requestAnimationFrame про синхронизацию с отрисовкой кадра, а не про паузы ввода.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Каррирование против частичного применения
Следующий вопрос
Значение по умолчанию вычисляется на каждый вызов