这是实现计时器的不好方法吗?

时间:2018-07-27 07:19:46

标签: javascript

我是JS的新手,我想练习的一件事是在浏览器中实现计时器。在查看倒数计时器时,我总是看到人们使用getDate()和getTime()方法,但是这些让我感到困惑,因此我以这种方式实现了它。我只是想知道这段代码是否不好。

s = 0;

function countDown(){
   t = 60*25;
   s++;
   t -= s;
   var pomMins = Math.floor(t / 60);
   var pomSecs = t % 60;    

   if (t > 0){
      document.getElementById("demo").innerHTML = "" + pomMins + ":" + pomSecs;
   }else{
      document.getElementById("demo").innerHTML = "COMPLETE";
   }
}

function setTimer(){
   s = 0;
   t = 60*25;
   countDown();
   var timer = setInterval(countDown, 1000);
}

HTML是基本的P标签,其ID为“ demo”

1 个答案:

答案 0 :(得分:2)

这是错误的方式,因为您的setInterval可能不会每1000毫秒发生一次,但是例如1003ms,因为系统很忙,不能完全每1000ms执行一次。这就是getTime更准确的原因。