为了账号安全,请及时绑定邮箱和手机立即绑定

请教各位一个问题,求解答:求教节流问题怎么回事哈啊?

请教各位一个问题,求解答:求教节流问题怎么回事哈啊?

慕虎7371278 2019-09-08 22:25:58
varthrottle=function(func,delay){  varprev=Date.now();  returnfunction(){    varcontext=this;    varargs=arguments;    varnow=Date.now();    if(now-prev>=delay){      func.apply(context,args);      prev=Date.now();    }  }}functionhandle(){  console.log(Math.random());}window.addEventListener('scroll',throttle(handle,1000));两个date.now()是怎么运行的原理是什么
查看完整描述

2 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

先用闭包的方式在注册的时候初始化了一个时间戳作为节流计时的开始,每次节流函数执行的时候判断当前时间和节流开始的时间差如果大于等于预计时间(delay)就把节流开始计时的时间更新一下,以当前时间节点为下一个节流的开始时间。这样就保证了每一段时间执行一次
                            
查看完整回答
反对 回复 2019-09-08
  • 2 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信