export function throttle(fun, delay) { let last, deferTimer; return function (args) { let that = this; let _args = arguments; let now = +new Date(); if (last && now < last + delay) { clearTimeout(deferTimer); deferTimer = setTimeout(() => { last = now; fun.apply(that, _args); }, delay); } else { last = now; fun.apply(that, _args); } }; }