0

我有一个倒数计时器,我正在使用以下代码

if(hour < 10){ hour = "0"+hour;}
if(min < 10){ min= "0"+min;}
if(sec < 10){ sec= "0"+sec;}

问题是当分钟或小时达到 0 时,例如11:00:50,它会不断在其中添加零,例如11:0000000:45而不是11:00:45有什么办法可以解决这个问题。

4

1 回答 1

2

要将数字填充到两位数,我通常会编写一个小的addZ函数,例如:

function addZ(n) {
  return (n<10? '0' : '') + +n;
}

你可以像这样格式化你的时间:

var formattedTime = addZ(hour) + ':' + addZ(min) + ':' + addZ(sec);

甚至

var formattedTime = [addZ(hour), addZ(min), addZ(sec)].join(':');

它可以包含在 main 函数中并被称为z或类似的简称。

于 2013-09-25T03:25:21.600 回答