使用 js生成一个防抖函数
时间: 2024-04-08 17:30:19 浏览: 93
前端的js防抖代码示例
当在短时间内频繁触发某个函数时,防抖函数可以用来限制函数的执行次数。下面是一个使用 JavaScript 生成的基本防抖函数示例:
```javascript
function debounce(func, delay) {
let timer;
return function(...args) {
clearTimeout(timer);
timer = setTimeout(() => {
func.apply(this, args);
}, delay);
};
}
```
这个防抖函数接受两个参数:`func` 是要延迟执行的函数,`delay` 是延迟的毫秒数。当调用防抖函数返回的新函数时,会启动一个计时器,如果在延迟时间内再次调用该新函数,则会清除之前的计时器重新开始计时。只有在延迟时间结束后才会执行传入的 `func` 函数。
您可以根据需要将这个基本的防抖函数进行扩展和定制化。
阅读全文