zarm-web
Version:
基于 React 的桌面端UI库
18 lines (16 loc) • 395 B
JavaScript
const throttle = (func, delay) => {
let timer;
let startTime = Date.now();
return (...args) => {
const curTime = Date.now();
const remaining = delay - (curTime - startTime);
clearTimeout(timer);
if (remaining <= 0) {
func.apply(this, args);
startTime = Date.now();
} else {
timer = setTimeout(func, remaining);
}
};
};
export default throttle;