debounce
Creates a debounced function that delays invoking the provided function until at least ms milliseconds have elapsed since the last time it was invoked.
- Each time the debounced function is invoked, clear the current pending timeout with
clearTimeout()and usesetTimeout()to create a new timeout that delays invoking the function until at leastmsmilliseconds has elapsed. - Use
Function.prototype.apply()to apply thethiscontext to the function and provide the necessary arguments. - Omit the second argument,
ms, to set the timeout at a default of0ms.