debounce-wrap

Wrap function into a debounce function.
Install
$ npm install debounce-wrap --save
Usage
debounce:
const debounceWrap = require('debounce-wrap')
const debounce = debounceWrap(input, { wait: 100 })
function input(a) {
console.log(a)
}
debounce('hi')
debounce('hi')
excute immediately, then debounce:
const debounceWrap = require('debounce-wrap')
const debounce = debounceWrap(input, { wait: 100, first: true })
function input(a) {
console.log(a)
}
debounce('hi')
debounce('hi2')
bind this:
const debounceWrap = require('debounce-wrap')
const debounce = debounceWrap(function () {
console.log(this === window)
}, { wait: 100 })
window.onresize = debounce
cancel debounce:
const debounceWrap = require('debounce-wrap')
const debounce = debounceWrap(input, { wait: 100, first: true })
function input(a) {
console.log(a)
}
debounce('hi')
debounce('hi2')
debounce.cancel()
setTimeout(function () {
debounce('hi3')
}, 300)
API
License
MIT