forked from public/fvtt-cthulhu-eternal
27 lines
370 B
JavaScript
27 lines
370 B
JavaScript
'use strict';
|
|
|
|
function debounce(fn, delay) {
|
|
var timeout;
|
|
var args;
|
|
var self;
|
|
|
|
return function () {
|
|
self = this;
|
|
args = arguments;
|
|
clear();
|
|
timeout = setTimeout(run, delay);
|
|
};
|
|
|
|
function run() {
|
|
clear();
|
|
fn.apply(self, args);
|
|
}
|
|
|
|
function clear() {
|
|
clearTimeout(timeout);
|
|
timeout = null;
|
|
}
|
|
}
|
|
|
|
module.exports = debounce;
|