专栏名称: 前端之神
一位前端小菜鸡,写过300多篇原创文章,全网有5w+个前端朋友,梦想是成为”前端之神“~
目录
相关文章推荐
FT中文网  ·  《封神》展现的是何种民族心理? ·  9 小时前  
中欧商业评论  ·  西门子管理学院:赋能员工成长,驱动企业战略落地 ·  15 小时前  
FT中文网  ·  “米莱经济学”能否破解“拉美陷阱”? ·  昨天  
51好读  ›  专栏  ›  前端之神

setTimeout 定时器,根本就不准时呀!

前端之神  · 公众号  ·  · 2025-01-16 08:40

正文

前言

大家好,我是林三心,用最通俗易懂的话讲最难的知识点是我的座右铭,基础是进阶的前提是我的初心~

平时我们都会使用 setTimeout 来当做定时器,平时的基本用法如下:

但是为了节省性能,我们也会让 setTimeout 来实现 setInterval

真的准时吗?

但是 setTimeout 真的会很准时地去执行任务吗?我们可以来测一测,我们可以来看一下 实际的执行时间 理想的执行时间 是否一致

通过这个可以看出, 实际的执行时间 理想的执行时间 是不一致的,也就是说 setTimeout 不是准时的,是有差距的!

我们针对差距,再取个平均数,看看差距到底是个什么趋势变化

可以看出,一开始的时候差距还挺小的

接着差距会不断加大,到了一定差距的时候,就基本保持不变了,这可能也跟电脑有关系,每个人的电脑不一样,差距也不一样

精准的定时器

那么想要实现一个准时的定时器,应该怎么实现呢?我们可以使用 requestAnimationFrame 来实现







请到「今天看啥」查看全文