函数的节流与防抖

2019-07-14  本文已影响0人  镜轩夕照

节流(throttle)

函数节流的目的是防止不是用用户直接控制的函数,频繁触发。

var time= false;
window.onscroll = function(){
    if(time=== true) return;
    time= true;
    setTimeout(()=>{
        console.log("每隔500ms才真正触发此函数");
        time= false;
    },500)
}

防抖(debounce)

所谓防抖,就是指触发事件后在 n 秒内函数只能执行一次,如果在 n 秒内又触发了事件,则会重新计算函数执行时间。

var timer = null;
 window.onscroll = function(){
     if(timer){
         clearTimeout(timer);
     }
     timer = setTimeout(()=>{
        console.log("记录在300ms内最后一次被调用");
     },300)
 }
上一篇 下一篇

猜你喜欢

热点阅读