K-BOlG K-BOlG
Home
  • 前端
  • Http
  • Ajax
  • Node
  • MongoDB
  • Axios
  • Git
  • Webpack
  • React
  • Vue
  • Uni-app
  • 性能优化
  • 移动端
  • 技术
  • Vue3入门
  • TypeScript入门
  • Jenkins-Nginx
  • UI
  • 文本超出隐藏解决
  • 收藏
  • 实用网站
  • 资源库
  • Vue专区
  • 你知道的越多,不知道的也就越多
  • 拥抱生活,拥抱快乐
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

nengkai

大道至简-知易行难
Home
  • 前端
  • Http
  • Ajax
  • Node
  • MongoDB
  • Axios
  • Git
  • Webpack
  • React
  • Vue
  • Uni-app
  • 性能优化
  • 移动端
  • 技术
  • Vue3入门
  • TypeScript入门
  • Jenkins-Nginx
  • UI
  • 文本超出隐藏解决
  • 收藏
  • 实用网站
  • 资源库
  • Vue专区
  • 你知道的越多,不知道的也就越多
  • 拥抱生活,拥抱快乐
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 目录页

  • 前端

  • 技术

    • vue3入门
    • TypeScript入门
    • 在浏览器输入url后都发生了什么
    • 如何保证setTimeout准确性
      • 系统时间修复法
    • Jenkins+nginx
    • 浏览器缓存机制
    • requestAnimationFrame实践
    • git突然连不上github解决方案
    • 让vue3更好用的vite插件
    • Vue3有哪些新特性
    • EvenLoop有哪些
    • win10下关闭进程
    • JS设计模式
    • 谷歌调试快捷键
    • 前端常用设计模式
  • UI

  • 收藏

  • 随笔

  • 关于

  • views
  • 技术
nengkai
2022-05-10
目录

如何保证setTimeout准确性

# 系统时间修复法

function timer() {
   var speed = 500,
   counter = 1, 
   start = new Date().getTime();
   
   function instance()
   {
    var ideal = (counter * speed),
    real = (new Date().getTime() - start);
    
    counter++;
 
    var diff = (real - ideal);
    form.diff.value = diff;
 
    window.setTimeout(function() { instance(); }, (speed - diff)); // 通过系统时间进行修复
 
   };
   
   window.setTimeout(function() { instance(); }, speed);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

更多 https://blog.csdn.net/lgno2/article/details/116574487

编辑 (opens new window)
#setTimeout
上次更新: 5/25/2022, 6:17:07 AM
在浏览器输入url后都发生了什么
Jenkins+nginx

← 在浏览器输入url后都发生了什么 Jenkins+nginx→

最近更新
01
前端常用设计模式
04-01
02
谷歌调试快捷键
06-23
03
JS设计模式
06-02
更多文章>
Theme by Vdoing | Copyright © 2022-2023
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式