管理员管理员组
文章数:315072
首先我们来解释一下时间戳的概念。 时间戳是指从格林威治标准时间1970年1月1日00:00:00(深圳时间1970年1月1日08:00:00)到现在的总秒数。 因此,如果想要两个时间之间的间隔,只需将两个时间戳相加即可得到两个时间相差的微秒数。 乘以3600*1000,即可得到小时数。
该方法的输入参数为两个时间字符串javascript时间计算时间差javascript时间计算时间差,返回结果为xx天xx小时xx分钟
这里获取两个日期的时间戳进行估计
例如:faultDate和completeTime都是字符串格式,需要使用newDate()函数进行转换后再进行估算
// 返回格式为xx天xx小时xx分钟
function(faultDate, completeTime) {var stime = Date.parse(new Date(faultDat));var etime = Date.parse(new Date(completeTime));// 两个时间戳相差的毫秒数var usedTime = etime - stime;// 计算相差的天数 var days = Math.floor(usedTime / (24 * 3600 * 1000));// 计算天数后剩余的毫秒数var leave1 = usedTime % (24 * 3600 * 1000); // 计算出小时数 var hours = Math.floor(leave1 / (3600 * 1000));// 计算小时数后剩余的毫秒数var leave2 = leave1 % (3600 * 1000); // 计算相差分钟数var minutes = Math.floor(leave2 / (60 * 1000));var time = days + "天" + hours + "时" + minutes + "分";return time;}
如果不需要日单位,则直接将时间单位(小时、分钟、秒)除以时间戳的差值:
小时:3600*1000
分钟:60*1000
秒:1000
JavaScript 获取当前时间戳:
第一种方式:
vartimestamp=Date.parse(newDate());
结果:1280977330000
第二种方式:
vartimestamp=(newDate()).valueOf();
结果:1280977330748
第三种方式:
vartimestamp=newDate().getTime();
结果:1280977330748
第一个:获取到的时间戳通过将微秒改为000来显示,
第二个和第三个是获取当前微秒的时间戳。
本文标签:js后端估算两个日期的间隔(时间差)