其他分享
首页 > 其他分享> > 记录一下学习防抖和节流的操作

记录一下学习防抖和节流的操作

作者:互联网

所谓节流和防抖,其原理就是定时器,我把我的简单理解记录一下

防抖(debounce):刚开始执行一次,然后在特定时间里该方法只执行一次

场景:用户多次点击按钮

节流(throttle):刚开始不执行,只在特定时间里执行一次

场景:在输入框输入值的时候,可以减少赋值操作

防抖(这边测试是利用原生的写的,当然也可以进行封装操作,刚开始这样好理解一些)

     let flag=false
        debounce.onclick=()=>{
            if(!flag){
                flag=true
                 //做的一些事情
                setTimeout(()=>{
                    flag=false
                },1000)
            }
        }

节流

    var timer=null
    input.oninput=()=>{
         clearTimeout(timer);
         timer = setTimeout(() => {
           //做的事情
         }, 1000)
     }

 

标签:防抖,false,节流,记录,timer,flag,setTimeout
来源: https://www.cnblogs.com/wcq520/p/16362584.html