防抖,节流函数
// 防抖函数
function debounce(func, wait) {
// 创建一个定时器
let timeout
// 返回一个函数,这个函数会在一个时间区间结束后调用 func
return function() {
// 如果定时器还在运行,则清除定时器
timeout && clearTimeout(timeout)
// 否则,设定定时器,等待 wait 毫秒后执行 func 函数
timeout = setTimeout(() => {
// 执行 func 函数
func.apply(this, arguments)
}, wait)
}
}
// 节流函数
function throttle(func, wait) {
// 创建一个定时器
let timeout = null
// 返回一个函数,这个函数会在一个时间区间结束后调用 func
return function() {
// 如果定时器还在运行,则跳过
if (timeout) return
// 否则,设置定时器,等待 wait 毫秒后执行 func 函数
timeout = setTimeout(() => {
// 执行 func 函数
func.apply(this, arguments)
// 清空定时器
timeout = null
}, wait)
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】