Debouncing — технический термин с двумя тесно связанными значениями.
- В электронике это устранение дребезга контактов: механическая кнопка при одном нажатии может на очень короткое время создать несколько электрических импульсов вместо одного.
- В программировании интерфейсов это задержка обработки повторных событий: функция запускается лишь после того, как частые события прекратились на заданный интервал. Например, поиск начинает отправлять запрос только после паузы в наборе текста.
Слово образовано от bounce — «отскакивать, подпрыгивать». Буквально оно связано с «отскоками» сигнала при работе физического переключателя; позднее термин стал широко использоваться в веб-разработке.
Близкие понятия: throttling — ограничение частоты вызовов, rate limiting — ограничение числа запросов за период, input delay — задержка ввода. В отличие от debouncing, throttling позволяет выполнять функцию регулярно, но не чаще установленного предела.
- We added debouncing to the search box so it does not send a request after every keystroke.
Мы добавили задержку обработки повторных событий в поле поиска, чтобы оно не отправляло запрос после каждого нажатия клавиши.
- Debouncing prevents a physical button from being counted as several presses.
Устранение дребезга предотвращает подсчёт одного нажатия физической кнопки как нескольких.
- Without debouncing, resizing the browser window can trigger hundreds of function calls.
Без задержки обработки повторных событий изменение размера окна браузера может вызвать сотни вызовов функции.
- The engineer tested the circuit’s debouncing before installing the new switch.
Инженер проверил устранение дребезга в схеме перед установкой нового переключателя.
- Use debouncing when you want the action to happen only after the user stops typing.
Используйте задержку обработки повторных событий, когда действие должно происходить только после того, как пользователь перестанет печатать.