我正在努力寻找一种将秒转换为时间格式的好解决方案。
到目前为止,我有这个功能可以满足我的需求。
function secondstotime(secs)
{
var t = new Date(1970,0,1);
t.setSeconds(secs);
var s = t.toTimeString().substr(0,8);
if(secs > 86399)
s = Math.floor((t - Date.parse("1/1/70")) / 3600000) + s.substr(2);
return s;
}
alert(secondstotime(1920));
所以你可以在jsfiddle http://jsfiddle.net/7Pp5z/
中运行它所以这很好用,可以工作几个小时等但是我想把时间左边的零点去掉。举个例子
我想要00:32:00
变成32:00所以当输出到浏览器时它看起来更好
有人可以告诉我这样做的最佳方法,还是有人可以分享其他功能。
由于
答案 0 :(得分:2)
答案 1 :(得分:0)
首先,你应该更清楚地陈述你的问题。
“将秒转换为时间格式” 秒是表示持续时间的一种方式,但需要某种参考才能使其相关。
A.D.,UTC或持续时间。
请参阅 http://en.wikipedia.org/wiki/ISO_8601 为了胜利。
在JavaScript控制台中试用:
d = new Date(1920000)
Thu Jan 01 1970 01:32:00 GMT+0100 (Westeuropäische Normalzeit)
d.getUTCMinutes()
32
d.getUTCSeconds()
0
答案 2 :(得分:0)
这是一个以给定的秒数[s]显示请求格式的时间字符串的函数:
function showtime(s){
var time = new Date(new Date('1970/1/1 00:00').setSeconds(s))
.toTimeString().split(' ')[0].split(':');
return (+time[0] ? time[0]+':' : '') +
(+time[1] || +time[0] ? time[1] +':' : '') +
time[2];
}
您可以在此jsFiddle找到演示。