当前位置:首页 » 《随便一记》 » 正文

定时器 防抖 节流_amuist_ting的博客

22 人参与  2021年11月28日 13:03  分类 : 《随便一记》  评论

点击全文阅读


定时器

----setTimeout()  clearTimeout()

在指定的毫秒数到达之后执行指定的函数,只执行一次

// 创建一个定时器,1000毫秒后执行,返回定时器的标识
var timerId = setTimeout(function () {
  console.log('Hello World');
}, 1000);

// 取消定时器的执行
clearTimeout(timerId);

----setInterval()  clearInterval()

定时调用的函数,可以按照给定的时间(毫秒)周期调用函数

// 创建一个定时器,每隔1秒调用一次
var timerId = setInterval(function () {
  var date = new Date();
  console.log(date.toLocaleTimeString());
}, 1000);

// 取消定时器的执行
clearInterval(timerId);

注意事项:

1.HTML5规范规定了最小延迟时间不得小于4ms,即如果小于4ms,会被当做4ms来处理

2.由于javascript是单线程,执行队列需要进行插入调整,所以setInterval会出现下述问题:a.某些间隔会被跳过 b.多个定时器的代码执行间隔可能会比预期的要小

3.定时器调用传入函数名称+()  会导致回调函数直接执行

4.通过setTimeout递归自调用可以替代setInterval

5.当前页面处于hide(不可见 离开)状态时,定时器会休眠,但是队列会持续添加,会导致失序

----递归setTimeout实现有序的定时序列

 

防抖和节流

----防抖

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

策略:当事件被触发时,设定一个周期延迟执行动作,若周期又被触发,则重新设定周期,直到周期结束,执行动作

----节流

指连续触发事件但是在n秒中只执行一次函数

节流会稀释函数的执行频率

策略:固定周期内,只执行一次动作,若没有新事件触发,不执行;周期结束后,又有事件触发,开始新的周期

特点:连续高频触发事件时,动作会被定期执行,响应平滑

计时器版节流

时间戳版节流

 

 束流器版节流

 

 


点击全文阅读


本文链接:http://zhangshiyu.com/post/31355.html

执行  定时器  触发  
<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 风起时爱已荒芜(顾长歌宋锦),风起时爱已荒芜
  • 白丁儿罗佑霖(石女退婚十八次后,彩礼涨到了百万白丁儿罗佑霖结局+番外)结局_(白丁儿罗佑霖石女退婚十八次后,彩礼涨到了百万白丁儿罗佑霖结局+番外全书结局)结局列表_笔趣阁(白丁儿罗佑霖)
  • 此去经年人未还沈青禾结局+番外全书+后续+结局(沈青禾霍沉洲)列表_此去经年人未还沈青禾结局+番外(沈青禾霍沉洲)此去经年人未还沈青禾结局+番外全书+后续+结局在线
  • 都市第一军神萧岩林可儿完本_完本都市第一军神萧岩林可儿
  • 桃花依然笑春风宝藏美文(陆乘渊云梵音)全书免费_(陆乘渊云梵音)桃花依然笑春风宝藏美文后续(陆乘渊云梵音)
  • 宠她入骨!世子爷的追妻日常闻星落谢观澜结局+番外(闻星落谢观澜)全书免费_(闻星落谢观澜免费宠她入骨!世子爷的追妻日常闻星落谢观澜结局+番外读全书)列表_笔趣阁宠她入骨!世子爷的追妻日常闻星落谢观澜结局+番外
  • 霍沉洲此去经年人未还前言+后续沈青禾霍沉洲完本_霍沉洲此去经年人未还前言+后续(沈青禾霍沉洲)
  • 离恨覆江山全书+后续+结局(萧墨川温洛颜)免费_(离恨覆江山全书+后续+结局)萧墨川温洛颜列表_笔趣阁(萧墨川温洛颜)
  • 贫困生自称真千金,要把我这个鸠占鹊巢假千金赶出门结局+番外纯净版(方玉兰林嘉禾),贫困生自称真千金,要把我这个鸠占鹊巢假千金赶出门结局+番外纯净版
  • 穿书女配的逃出指南小说后续在线免费阅读_[牧宠]完结版免费阅读
  • 「太荒混沌鼎」后续更新_「叶无涯柳如烟」小说后续在线免费阅读
  • 全文消失的老婆(昭昭王力)列表_全文消失的老婆

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1