Skip to content

Instantly share code, notes, and snippets.

@trafficinc
Created February 17, 2023 16:39
Show Gist options
  • Save trafficinc/4c4af7e8243e2f9e3a7686ffd15e63f1 to your computer and use it in GitHub Desktop.
Save trafficinc/4c4af7e8243e2f9e3a7686ffd15e63f1 to your computer and use it in GitHub Desktop.
Debounce function
export function debounce(func, wait, immediate) {
var timeout
return function () {
var context = this,
args = arguments
var later = function () {
timeout = null
if (!immediate) func.apply(context, args)
}
var callNow = immediate && !timeout
clearTimeout(timeout)
timeout = setTimeout(later, wait)
if (callNow) func.apply(context, args)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment