【问题标题】:How to convert seconds to minutes and seconds?如何将秒转换为分钟和秒?
【发布时间】:2019-03-25 21:23:02
【问题描述】:

编码新手!我想做一个简单的倒计时计时器,从 53 分钟开始倒计时。如何将输出格式化为“52:58”而不是“3178”(秒)?谢谢! :)

这就是我所拥有的:

window.onload = function () {
  var counter = 0;
  var timeleft = 3180;

  function convertSeconds(s) {
    var min = floor (s / 60);
    var sec = s % 60;
    return min + ':' + sec;

  }

  function setup() {
    var timer = document.getElementById("timer");
    timer.innerHTML = (convertSeconds(timeleft - counter));

    function timeIt() {
      counter++;
      timer.innerHTML = (convertSeconds(timeleft - counter));
    }
    setInterval(timeIt, 1000);
  }
  setup();
}

【问题讨论】:

  • 您看到的错误是什么?

标签: javascript timer countdown


【解决方案1】:

使用Math.floor 而不是floor。你的代码已经在做你想做的一切了:)

window.onload = function () {
  var counter = 0;
  var timeleft = 3180;

  function convertSeconds(s) {
    var min = Math.floor (s / 60);
    var sec = s % 60;
    return min + ':' + sec;

  }

  function setup() {
    var timer = document.getElementById("timer");
    timer.innerHTML = (convertSeconds(timeleft - counter));

    function timeIt() {
      counter++;
      timer.innerHTML = (convertSeconds(timeleft - counter));
    }
    setInterval(timeIt, 1000);
  }
  setup();
}
<div id="timer"></div>

【讨论】:

    【解决方案2】:

    您应该使用Math.floor()function 以分钟为单位计算值,并且 秒。

    【讨论】:

    • 嗯,不是真的。 Math.floor() 用于对数字进行四舍五入,而不是以分钟和秒为单位计算值:)
    • 实际上,如果你把参数放在里面,比如 math.floor(value*60) 以将分钟转换为秒。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-01
    • 2015-06-02
    • 1970-01-01
    相关资源
    最近更新 更多