123456789101112131415161718192021222324252627282930313233343536373839 |
- // 防抖
- export const Debounce = (fn, t) => {
- let delay = t || 500;
- let timer;
- console.log(fn)
- console.log(typeof fn)
- return function () {
- let args = arguments;
- if(timer){
- clearTimeout(timer);
- }
- timer = setTimeout(() => {
- timer = null;
- fn.apply(this, args);
- }, delay);
- }
- };
- // 节流
- export const Throttle = (fn, t) => {
- let last;
- let timer;
- let interval = t || 500;
- return function () {
- let args = arguments;
- let now = +new Date();
- if (last && now - last < interval) {
- clearTimeout(timer);
- timer = setTimeout(() => {
- last = now;
- fn.apply(this, args);
- }, interval);
- } else {
- last = now;
- fn.apply(this, args);
- }
- }
- };
|