如何使时钟的显示与实时同步

How to make a display of a clock synchronous with the real time

本文关键字:实时 同步 显示 何使 时钟      更新时间:2024-06-23

我想用javascript制作一个时钟。

我希望秒甚至毫秒都能像真正的时钟一样实时显示。你可以看到数字是如何实时变化的。

我想到了一个循环,其中一个函数调用自己来重复写命令,比如这个

function countdown (i) {
  if (i == undefined) {
    i = 10;
  }
  if (i > 0) {
    i--;
    var timeout = window.setTimeout("document.getElementById("thedate").innerHTML ... , 1000);
  }
}
countdown();

我怎么能让函数像真正的时钟一样以同样的速度重复,这可能吗?

当我刚刚将setTimeout的步长设置为1,并每秒重复1000次函数时,它可能与我之前通过getDate定义的实时时间异步,对吗?

主要问题是:如何使我的重复功能与实时同步?

使用setInterval Web Api解决该问题:

var intervalID = window.setInterval(myCallback, 1000);
function myCallback() {
  // Gets called every second
}

setInterval()方法的文档

在我的博客中,你可以找到你想要的

http://turgaygulmez.com/javascript-local-time/

不使用函数创建无限循环,只需使用setInterval(function () {}, 1000);