export function myDebounce(fn: Function, wait: number, immediate: boolean = true) {
let timer: null | NodeJS.Timeout = null;
return function (this:unknown) {
if (timer) {
clearTimeout(timer);
} else {
if (immediate) {
fn.apply(this, arguments);
}
}
timer = setTimeout(() => {
timer = null;
if (!immediate) {
fn.apply(this, arguments);
}
}, wait);
};
};
带立即执行的防抖函数
最新推荐文章于 2024-03-20 18:36:02 发布