gpt4 book ai didi

javascript setInterval没有按时运行

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:29:30 25 4
gpt4 key购买 nike

我编写了一个无法正常工作的计时器方法。它应该显示在表单上耗时,但它是以 2 或 3 为单位而不是每秒一次。是什么导致了这种行为,我该如何解决?

我的代码:

function startTimer() {
var minutes, seconds;

setInterval(function () {
if (!isPaused) {
minutes = parseInt(timer / 60, 10);
seconds = parseInt(timer % 60, 10);

minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;

$('#TimeLabel').text("Form Time: " + minutes + ":" + seconds);

++timer;
}
}, 1000);
}

上面的代码显示“表单时间:00:01”,然后是“表单时间:00:04”,然后是“表单时间:00:07”等。

最佳答案

这是我想出的一个例子。它使用时间以便不依赖于您的setInterval 的准确性。希望这对您有所帮助!

function startTimer(){
var minutes,
seconds;

var startTime = new Date;

setInterval(function(){

var currentTime = new Date;
seconds = currentTime.getSeconds() - startTime.getSeconds();

if(seconds < 0){
seconds += 60;
}else if(seconds === 0){
minutes = currentTime.getMinutes() - startTime.getMinutes();
}

console.log(minutes + ':' + seconds);

}, 100);
}
startTimer();

关于javascript setInterval没有按时运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34359818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com