core/node_modules/c9/throttle.js
Matthijs van Henten 353dcb4b69 throttle publishing
2017-10-25 22:51:44 +00:00

18 lines
396 B
JavaScript

/**
* Return a function that ensures callback is
* not called more often ten once per tpms (times per ms)
*/
function throttle(tpms) {
var last = Date.now();
return function(callback) {
var now = Date.now();
var delay = Math.max(0, last - now);
last = now + delay + tpms;
setTimeout(callback, delay);
};
}
module.exports = throttle;