如何在Javascript中找到两个UTC时间之间的差异?

如何在Javascript中找到两个UTC时间之间的差异?,javascript,time,Javascript,Time,我有两个UTC格式的日期,即2019年1月5日12:58:53 GMT和2019年1月5日13:07:54 GMT。我需要找到两个日期之间的时间差。到目前为止,我已经尝试了以下代码 函数时差(日期1、日期2){ 变量差异=date1.getTime()-date2.getTime(); log(“差异-0--0”,差异) var daysDifference=数学下限(差/1000/60/60/24); 差值-=天数差值*1000*60*60*24 var hoursDifference=数学

我有两个UTC格式的日期,即2019年1月5日12:58:53 GMT和2019年1月5日13:07:54 GMT。我需要找到两个日期之间的时间差。到目前为止,我已经尝试了以下代码

函数时差(日期1、日期2){
变量差异=date1.getTime()-date2.getTime();
log(“差异-0--0”,差异)
var daysDifference=数学下限(差/1000/60/60/24);
差值-=天数差值*1000*60*60*24
var hoursDifference=数学楼层(差/1000/60/60);
差值-=小时差值*1000*60*60
var minutesDifference=数学楼层(差/1000/60);
差异-=分钟差异*1000*60
var Seconds差值=数学下限(差值/1000);
log('difference='+daysDifference+'day/s'+hoursdfference+'hour/s'+minutesdfference+'min/s'+secondsdfference+'second/s');
}
时差(新日期('2019年1月5日星期六12:58:53 GMT')、新日期('2019年1月5日星期六13:07:54 GMT'))
尝试测试我的解决方案:

函数时差(日期1、日期2){
设chage=0;
让difference=Math.abs(date1.setmillizes(0)-date2.setmillizes(0))/1000;
设天数=数学下限(差/(60*60*24));
chage=差异%(60*60*24);
让小时数=数学楼层(chage/(60*60));
chage=chage%(60*60);
让分钟数=数学楼层(chage/60);
让秒数=更改%60;
log(“天:”,天,“小时:”,小时,“分钟:”,分钟,“秒:”,秒)
}

时差(新日期('Sat,2019年1月5日12:58:53 GMT')、新日期('Sat,2019年1月5日13:07:54 GMT'))
是否存在任何失败的情况?你期待更清洁的解决方案吗?是的。。。当我以24小时格式(即2019年1月5日12:58:53 GMT和2019年1月5日5:07:54 GMT)通过时间时,它失败了。它应该给我0天,0小时,9分钟,1秒的输出,但它给我-1天/s 23小时/s 50分钟/s 59秒/s,当差值在0和-1之间时(仅限),
Math.floor
返回-1