Die Aktualisierungszeit beträgt nicht unbedingt 50 Millisekunden. Angesichts der Erkennungsfähigkeit des menschlichen Auges ist es jedoch sinnlos, die Frequenz zu schnell zu aktualisieren: 1. Der Abstand zwischen jetzt und a bestimmte Zeit in der Zukunft Wie viel Zeit verbleibt noch? 2. Wie lange ist seit einer bestimmten Zeit in der Vergangenheit bis jetzt vergangen?
<div id="timeB"></div> <script type="text/javascript"> function countDown(endTime, startTime = new Date()) {//为了满足一些特殊情况这里给一个开始时间的参数并附上默认值,一般情况只需要传入结束时间即可 let date = endTime - startTime; //时间差 let mmsec = date % 1000 //所余毫秒数 let seconds = Math.floor(date / 1000 % 60); //所余秒数 let minutes = Math.floor(date / 1000 / 60 % 60); //所余分钟数 let hour = Math.floor(date / 1000 / 60 / 60 % 24); //所余时钟数 let day = Math.floor(date / 1000 / 60 / 60 / 24); //天数 return { day: day , hour: hour , minutes: minutes , seconds: seconds , mmsec: mmsec } } const timeB = document.querySelector('#timeB'); //开启定时器 setInterval(() => { let time = countDown(new Date(2016, 8, 1));//只需要传入结束时间 timeB.innerHTML = "距离2016年9月1号00点还有" + time.day + "天" + time.hour + "小时" + time.minutes + '分钟' + time.seconds + '秒' + time.mmsec + "毫秒"; }, 50); </script>