防抖和节流:

均是缩小某一函数频繁执行耗费内存和资源的状况(缩小执行次数)。

防抖:规定在多久工夫内没有动作触发函数才执行该函数。

场景举例:用户滚轮滑动显示间隔页顶的高度。  //显示页顶高度  function showTop(){    console.log(document.body.scrollTop||document.documentElement.scrollTop)    time = null;  }  //防抖函数  function rejectShook(){    var time = null;    return function(){      if(time==null){      //新建计时器,到时console          time = setTimeout(showTop,200)      }else{      //没到工夫删除老计时器,新建另一计时器.           clearTimeout(timer);           time =setTimeout(showTop,200)      }    }  }window.onscroll =rejectShook(showTop);

节流:类型于技能冷却,触发后肯定工夫不再触发

 function showTop(){    console.log(document.body.scrollTop||document.documentElement.scrollTop;); } window.onscroll =lessRender(); function lessRender(){   //定义一个冷却,初始未冷却:false   var lique =false;   return function(){    //查问以后状态       if(lique){         return;~~~~       }else{         show();         lique = true;         //从新进入冷却,2s后能够再触发         setTimeout(()=>{lique=false},2000)     }   } }