如果数字低于10,则前导零 - 数字0的错误

时间:2013-11-16 21:17:46

标签: javascript jquery

我创造了某种JS时钟,其中真实生活时间= = 1个时钟的小时。但是有一个错误,每分钟数小于10的数字被重写为"0"+minute,所以它看起来像01,02等,但是数字0有问题,它的输出是0,不是我想要的00,这是我的代码。

// time and date
var minute = 57;
var hour = 0;

function getTime(){
    $("#time").html(hour+":"+minute);
};
function init(){
    setInterval(function(){getTime();}, 1000);
    setInterval(function(){
        if (minute == 59){
            hour=++hour;
            minute=minute-59;           // (\(\    Hoo hoo
        }                               // ( . .)  you found
        else {                          // c(“)(“) a bunny :)
            minute=++minute;
            if (minute < 10){
                minute="0"+minute;
            } 
        } 
    }, 1000);
}
init();

感谢您的帮助。 :)

3 个答案:

答案 0 :(得分:1)

您在minute = 0阻止中设置了if,而不是else

只需将minute=minute-59替换为minute = '00',因为只有一种情况,当您输入ifminute必须等于59,然后你从中减去59,所以它总是0)。

答案 1 :(得分:1)

怎么样:

 $("#time").html(hour+":"+("00"+minute).slice(-2));

并删除您正在递增minute

的串联

答案 2 :(得分:0)

hour = hour.toString();
minute = minute.toString();
while (hour.length < 2) hour = "0" + hour;
while (minute.length < 2) minute = "0" + minute;