当前位置:网站首页>用 setTimeout 来实现 setInterval
用 setTimeout 来实现 setInterval
2022-08-03 20:31:00 【船长在船上】
️ 作者:船长在船上
主页:来访地址船长在船上的博客
简介:高级前端开发工程师,专注前端开发,欢迎咨询交流,共同学习!感谢:如果觉得博主的文章不错或者对你的工作有帮助或者解决了你的问题,可以关注、支持一下博主,如果三连收藏支持就会更好,在这里博主不胜感激!!!如有疑问可以留言、评论,看到后会及时回复。
(1)用 setTimeout()方法来模拟 setInterval()与 setInterval()之间的什么区别?
首先来看 setInterval 的缺陷,使用 setInterval()创建的定时器确保了定时器代码规则地插
入队列中。这个问题在于:如果定时器代码在代码再次添加到队列之前还没完成执行,
结果就会导致定时器代码连续运行好几次。而之间没有间隔。不过幸运的是:javascript
引擎足够聪明,能够避免这个问题。当且仅当没有该定时器的如何代码实例时,才会将
定时器代码添加到队列中。这确保了定时器代码加入队列中最小的时间间隔为指定时间。
这种重复定时器的规则有两个问题:1.某些间隔会被跳过 2.多个定时器的代码执行时间
可能会比预期小。
下面举例子说明:
假设,某个 onclick 事件处理程序使用 setInterval()来设置了一个 200ms 的重复定时器。
function say(){
setTimeout(say,200);
};
setTimeout(say,200);
//或者
setTimeout(function(){
setTimeout(arguments.callee,200);
},200);
欢迎来访船长在船上的博客,如有疑问可以留言、评论,看到后会及时回复。
边栏推荐
- 子树的大小
- 解决This application failed to start because no Qt platform plugin could be initialized的办法
- 化算力为战力:宁夏中卫的数字化转型启示录
- 2022.8.2
- 【微信小程序2】事件传参与数据同步[03]
- 使用 ReportLab 绘制 PDF
- (十六)51单片机——红外遥控
- leetcode 16.01. Swap numbers (swap the values of 2 numbers without using temporary variables)
- 简单又有效的基本折线图制作方法
- Auto.js实现朋友圈自动点赞
猜你喜欢
tRNA甲基化偶联3-甲基胞嘧啶(m3C)|tRNA-m3C (3-methylcy- tidine)
李沐动手学深度学习V2-BERT微调和代码实现
迪赛智慧数——柱状图(多色柱状图):2021年我国城市住户存款排名
nvm的使用 nodejs版本管理,解决用户名是汉字的问题
[email protected] 610/[email protected] 594/Alexa 56"/>
染料修饰核酸RNA|[email protected] 610/[email protected] 594/Alexa 56
abs()、fabs() 和 labs() 的区别
Anaconda 虚拟环境迁移
亚马逊云科技 Build On 2022 - AIot 第二季物联网专场实验心得
YARN功能介绍、交互流程及调度策略
codeforces:C. Maximum Subrectangle【前缀和 + 贪心 + 最小子数组和】
随机推荐
LeetCode 1374. 生成每种字符都是奇数个的字符串
高并发,你真的理解透彻了吗?
博士申请 | 美国明尼苏达大学葛畅教授招收隐私数据管理方向全奖博士/硕士/博后/访问学者...
leetcode 16. 数值的整数次方(快速幂+递归/迭代)
Detailed AST abstract syntax tree
涨薪5K必学高并发核心编程,限流原理与实战,分布式计数器限流
RNA核糖核酸修饰荧光染料|HiLyte Fluor 488/555/594/647/680/750标记RNA核糖核酸
ESP8266-Arduino编程实例-BH1750FVI环境光传感器驱动
Li Mu hands-on learning deep learning V2-BERT fine-tuning and code implementation
Statistical machine learning 】 【 linear regression model
Why BI software can't handle correlation analysis
一种能有效缓解环境噪声对音频质量干扰的方案
tRNA甲基化偶联3-甲基胞嘧啶(m3C)|tRNA-m3C (3-methylcy- tidine)
leetcode 326. Powers of 3
charles配置客户端请求全部不走缓存
RNA核糖核酸修饰RNA-HiLyte FluorTM 405荧光染料|RNA-HiLyte FluorTM 405
云服务器如何安全使用本地的AD/LDAP?
数学之美 第六章——信息的度量和作用
力扣203-移除链表元素——链表
化算力为战力:宁夏中卫的数字化转型启示录