JS--函数的防抖和节流「闭包总结」

59 阅读1分钟

函数防抖:防止“老年帕金森”,用户频繁触发某个行为的时候,我们只识别“一次”「频繁的定义可以自己管控」 函数防抖:用户频繁操作的时候,不根据用户频繁操作度来决定触发多少次,而是根据设定好的频率进行触发,实现“降频”的效果,相对于防抖来讲,节流是允许触发多次的!!

const submit = document.querySelector('#submit')




// 场景一:点击按钮,向服务器发送请求(需要一定的时间),在当前请求没有成功之前,再次点击按钮应该什么都不处理才对
//   + submit是提交按钮
//   + this.$api.postInfo() 向服务器发送请求,而account和password是我们要传递给服务器的账号密码
let isRun = false;
submit.onclick = async function () {
    if (isRun) {
        // 如果处于正在请求中,就不要再去做任何的事情了
        return;
    }
    isRun = true; //正在请求中
    await this.$api.postInfo({
        account: 'z',
        password: '123456'
    });
    // 第一次发送的请求成功了:把isRung回归初始值
    isRun = false;
}; 
*/