Skip to content

Instantly share code, notes, and snippets.

@bradoyler
Last active August 29, 2015 14:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bradoyler/e6f32198a06ca2a0ee5b to your computer and use it in GitHub Desktop.
Save bradoyler/e6f32198a06ca2a0ee5b to your computer and use it in GitHub Desktop.
debounce javascript function
function debounce(func, wait, immediate) {
var timeout;
return function() {
var context = this,
args = arguments;
clearTimeout(timeout);
timeout = setTimeout(function() {
timeout = null;
if (!immediate) {
func.apply(context, args);
}
}, wait);
if (immediate && !timeout) {
func.apply(context, args);
}
};
}
//usage:
// var debouncedFunc = debounce(myFunc,300,true);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment