overseer/node_modules/just-debounce
2022-11-01 18:49:18 -04:00
..
.eslintrc Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
.travis.yml Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
index.d.ts Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
index.js Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
LICENSE Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
package.json Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
prettier.config.js Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
README.md Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00
test.js Added Gulp.js for compiling SCSS stylesheets 2022-11-01 18:49:18 -04:00

just-debounce

just a basic debounce function

changes

  • 1.1.0: added typescript definitions

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
  • atStart: if true, the function will be called at the beginning of the delay rather than the end
  • guarantee: additional calls to debounced function will not reset they delay. This guarantees that if the function is called frequently, it will fire once every delay rather than waiting for a break in calls.
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