Целью переноса функции с debounce является задержка выполнения функции до тех пор, пока она вызывается повторно. Параметр wait
указывает время, которое должно пройти после последнего вызова дебазированной функции, прежде чем будет вызвана внутренняя функция. Если интервал вызывает функцию один раз каждые 1000 мс, а ожидание составляет 4000 мс, упакованная функция никогда не будет вызвана.
Изменение интервала на значение, меньшее 1000, вызовет функцию (и, вероятно, победит первоначальную цель переноса с помощью debounce):
Если вы хотите ограничить работу функции один раз каждые 4000 мс, используйте _.throttle()
. Throttle будет ограничивать вызов внутренней функции до одного раза за время ожидания, независимо от того, сколько раз была вызвана функция с переносом.