JS 中的计时器能做到精确计时吗?为什么?

计算机硬件缺乏原子钟导致计时不精确,操作系统计时函数存在微小误差。JS计时器基于操作系统函数,故同样带偏差。W3C标准规定,浏览器计时器超过5层嵌套会有至少4毫秒延迟。此外,计时器回调依赖主线程空闲,事件循环也影响其执行时间,增加额外的不准确性。
摘要由CSDN通过智能技术生成
  1. 计算机硬件没有原⼦钟,⽆法做到精确计时
  2. 操作系统的计时函数本身就有少量偏差,由于 JS 的计时器最终调⽤的 是操作系统的函数,也就携带了这些偏差
  3. 按照 W3C 的标准,浏览器实现计时器时,如果嵌套层级超过 5 层, 则会带有 4 毫秒的最少时间,这样在计时时间少于 4 毫秒时⼜带来 了偏差
  4. 受事件循环的影响,计时器的回调函数只能在主线程空闲时运行,因此 又带来了偏差
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值