javascript - JS 秒表定时器 H :m:s:ms format, 当达到 60 分钟时,分钟不会重置

标签 javascript jquery time

我制作了一个 JS 秒表,其格式为 H:m:s:ms 当达到 60 分钟时,它总是增加到 61,62 等等

我正在使用 setInterval 这是我的代码:

n = 3600;
    td = setInterval(function () 
    {
      n++;
      let hours = parseInt(n / 3600);
      var m = parseInt(n / 60)
      var s = parseInt(n / 60 % 60);
      var M = parseInt(n % 60);

      // let hours = Math.floor(((n[ids] / 1000) / 60) / 60) % 24
      // let m = Math.floor((n[ids] / 1000) / 60) % 60
      // let s = Math.floor(n[ids] / 1000) % 60
      // let M = Math.floor(n[ids] % 1000)

      $("#display0").html(toDub(hours) + ":" + toDub(m) + ":" + toDub(s) + ":" + toDub(M))
    }, 1000 / 60);

完整源代码:https://jsfiddle.net/greycat/danvL42s/2/

我确定我的 m 变量有问题。

谁能帮帮我吗?

最佳答案

逻辑如下:一秒是其 60 毫秒的小数部分的四舍五入值,一分钟是其 60 秒的小数部分的四舍五入值,依此类推。

您可以重构时间变量,如下所示:

var M = parseInt(n % 60); 
var s = parseInt(n / 60 % 60);
var m = parseInt(n / 60**2 % 60); 
var hours = parseInt(n / 60**3 % 60); 

关于javascript - JS 秒表定时器 H :m:s:ms format, 当达到 60 分钟时,分钟不会重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74397978/

相关文章:

javascript - Angular : Allow selection from only one group in drop-down list bootstrap-select

php - 12 小时时钟数组排序

javascript - Intl.DateTimeFormat 不关心 '2-digit' 或 'numeric'

python - Tkinter 上的 time.sleep() 等效项

javascript - 刷新页面时 HTML 5 Web SQL 数据库事务提交或回滚

javascript - 同位素回调函数

javascript - 从ajax响应创建动态变量

javascript - 图像打开模态对话框 Bootstrap

javascript读取csv文件返回空数组

javascript - 有没有办法让窗口事件先触发