函数节流/防抖

96 阅读1分钟

函数节流: 一个函数执行一次后,只有大于设定的执行周期后才会执行第二次

函数防抖:一个需要频繁触发的函数,在规定时间内,只让最后一次生效,前面的不生效

函数节流
function throttle(callback,wait){
    // 定义开始时间
    let start = 0
    // 返回结果是一个函数
    return function(e){
        // 获取当前时间戳
        let now = Date.now()
        // 判断
        if(now - start >= wait){
            // 若满足条件,则执行回调函数
            callback.call(this,e)
            // 修改开始时间
            start = now
        }
    }
}
 // 绑定滚动事件
    window.addEventListener('click',throttle(function(e){
        console.log(e)
    },2000))
函数防抖