0

在 Javascript 中,我需要帮助将具有百分之一的整数转换为“分钟:秒。百分位”。

因此,例如,我有这个:'10420',并希望像这样显示它:01:44.20。

有任何想法吗?

4

3 回答 3

2
function leading0(number){ return number < 10 ? "0" : "";}

mins = parseInt((hundredths / 100) / 60)
secs = parseInt((hundredths / 100) % 60)
huns = parseInt(hundredths % 100)
output = leading0(mins) + mins + ":" + leading0(secs) + secs + "." + leading0(huns) + huns;

jsFiddle 示例:http: //jsfiddle.net/cNu2t/

于 2012-08-22T12:23:25.017 回答
0

Moment.js应该能够基于它提供的非常丰富的格式设置、解析等来处理这个问题。我不知道你是否会做足够多的额外日期和/或时间相关的东西来为你为一个页面下载的资源集添加一个 5K JavaScript 库,但如果你有其他地方可能值得一看你可以在哪里使用它。

我知道它以毫秒为单位,你可以将你的数字乘以 10 得到毫秒,然后通过他们的格式化函数来输出你想要的结果。

于 2012-08-22T13:21:19.613 回答
0
var hundredths = 10420;
var seconds = Math.floor(hundredths / 100);
var minutes = Math.floor(seconds / 60);
return minutes+":"+(seconds-minutes*60)+"."+("0"+(hundredths-seconds*100)).substr(-2);

或者:

function leadingZero(n) { return ("00"+n).substr(-2); }
var hundredths = 10420;
var secs = ~~(hundreths/100);
var mins = ~~(secs/60);
return mins+":"+leadingZero(secs%60)+"."+leadingZero(hundredths%100);
于 2012-08-22T12:24:52.430 回答