JavaScript 防抖函数实现:简易代码示例
防抖函数的作用是在一个时间段内,只执行最后一次调用,避免频繁调用函数造成资源浪费。以下是一个简版的防抖函数实现:
function debounce(func, delay) { let timer;
return function() { const context = this;
const args = arguments;
clearTimeout(timer);
timer = setTimeout(() => { func.apply(context, args); }, delay); }
}
这个防抖函数接受两个参数,第一个参数是要执行的函数,第二个参数是延迟时间。函数内部创建了一个计时器,每次函数被调用时,先清除之前的计时器,并重新设置一个新的计时器,在延迟时间后执行函数。如果在延迟时间内再次调用函数,会清除之前的计时器,并重新设置一个新的计时器,直到延迟时间内没有新的调用,才会执行函数。
原文地址: https://www.cveoy.top/t/topic/lFM9 著作权归作者所有。请勿转载和采集!