for循环毫秒转换为秒和分钟

时间:2014-06-10 23:25:52

标签: javascript loops time

这出现在一个函数的中间,我自己编写并且卡住了。

它以毫秒为单位调用时间(countStart)然后调用它完成的时间(countEnd)。当激活它时,它会查看countStart countEnd并进行数学运算以确定它是否已运行足够长时间以便再次运行。

所有这一切都是成功的,除了它以秒为单位显示所有内容,因此3分钟为180秒。我试图找到一种方法让它正确倒数3分钟。

这是可行的吗?我已经做了几个小时的研究,我可以找到50种方法可以做到这一点,而且所有这些方法都是基于HTML的,并且非常大。我试图添加一个如果这超过60功能然后加1到几分钟并从秒减去60,但这锁定了计数器。

所以无论如何,任何帮助或指导都会受到赞赏

    var countStart = 100000000000000;
    var countStop = 100000000000020;
    var countDelay = 180000;
    alert(parseInt((factor * -1) / 1000, 10) + " s)");
    for (var factor = countStop - (countStart + countDelay) + 1; factor > 0; factor--){
        countStart = 0;
        countStop = 0;
        countDelay = 0;
    }

1 个答案:

答案 0 :(得分:2)

算一算:

var time_in_seconds = ...;
var minutes = (time_in_seconds / 60) | 0; // divide by 60 and truncate to an integer.
var seconds = time_in_seconds % 60;       // this is the modulo operator

如果你没有明显的理由不喜欢模运算符,那么你可以做进一步的数学运算:

var minutes = (time_in_seconds / 60) | 0;
var seconds = time_in_seconds - minutes * 60;

格式化两个整数:

var string = minutes + "m" + (seconds < 10 ? "0" + seconds : seconds);

condition ? then_expr : else_expr是三元运算符。如果条件为真,则评估then_expr,否则else_expr