Kevin 29b9a0c50c clean && clean html base 4 years ago
..
.eslintrc 29b9a0c50c clean && clean html base 4 years ago
.npmignore 29b9a0c50c clean && clean html base 4 years ago
LICENSE 29b9a0c50c clean && clean html base 4 years ago
README.md 29b9a0c50c clean && clean html base 4 years ago
index.js 29b9a0c50c clean && clean html base 4 years ago
package.json 29b9a0c50c clean && clean html base 4 years ago
test.js 29b9a0c50c clean && clean html base 4 years ago

README.md

just-debounce

just a basic debounce function

Why?

I searched npm and the first 3 pages of results for "debounce" did not have a small correctly implemented version of debounce

Usage

arguments

  • fn: the function to debounce
  • delay: debounce delay in ms
  • at_start: if true, the function will be called at the beginning of the delay rather than the end
  • guarantee: ensures the time before the next call the fn is not greater \ than the delay period.
var db = require('just-debounce')

var debounced = db(function(v) {console.log(v)}, 100)

debounced('hi')
debounced('hi')
// logs 'hi' once after 100ms
var db = require('just-debounce')

var debounced = db(function(v) {console.log(v)}, 100, true)

debounced('hi')
debounced('hi')
// logs 'hi' once right away, but not a second time. calling after 100ms will log again
var db = require('just-debounce')

var debounced = db(function(v) {console.log(v)}, 100, false, true)

debounced('hi')
setTimeout(function() {debounced('hi2')}, 80)

// logs 'hi2' once 100ms after the first call to debounced

license

MIT