标题可能描述的不是很清楚,是这样的,我需要得到一个程序运行了多久,最简单的方法就是用时间戳相减,但是得到的是毫秒计,不好理解,想转为天、小时、分、秒表示,于是就有了下面的方法。
当然,这个只是一个思路,还可以写的更优雅,下次更新下吧 :-)
function parseDiffFromTS(timestamp){
var _ms = 1;//毫秒
var _s = 1000 * _ms;//秒
var _m = 60 * _s;//分
var _h = 60 * _m;//小时
var _d = 24 * _h;//天
var arr = [_d, _h, _m, _s, _ms];
var dArr = [];//用来存储计算后的日期
var num = timestamp;//用来记录变化的时间戳
//循环处理时间差
for(var len = arr.length; len > 0; len--){
var n = arr.shift();
dArr.push(Math.floor(num/n));
num = num%n;//更新每个阶段的时间差
}
return dArr;
}
var s = parseDiffFromTS(48260266);
var str =s[0] + '天' + s[1]+ '小时' + s[2] + '分' + s[3] + '秒' + s[4] + '毫秒';
alert(str);
Comments(0)