【发布时间】:2013-08-28 19:11:08
【问题描述】:
我试图获取 2 个不同时间之间的时差,并且我在几小时和几分钟内都得到了正确的时间差。但如果第二个大于第一个,就会出现问题。时间显示为负数。
例如
Start time : 00:02:59
End time : 00:05:28
如果我得到开始和结束时间之间的差异
00:05:28 - 00:02:59 = 00:3:-31
这不是一个正确的值。我正在使用以下脚本来获取此值。
var start_time = $("#startTime").val();
var end_time = $("#endTime").val();
var startHour = new Date("01/01/2007 " + start_time).getHours();
var endHour = new Date("01/01/2007 " + end_time).getHours();
var startMins = new Date("01/01/2007 " + start_time).getMinutes();
var endMins = new Date("01/01/2007 " + end_time).getMinutes();
var startSecs = new Date("01/01/2007 " + start_time).getSeconds();
var endSecs = new Date("01/01/2007 " + end_time).getSeconds();
var secDiff = endSecs - startSecs;
var minDiff = endMins - startMins;
var hrDiff = endHour - startHour;
alert(hrDiff+":"+minDiff+":"+secDiff);
任何人请告诉我如何正确获得两次之间的时间差,即使考虑秒数
【问题讨论】:
-
您可以先将它们转换为秒,甚至更好地转换为毫秒,然后进行算术运算并将它们转换回您的格式。
-
但如果我这样做也会影响分钟。我想用“HH:MM:SS”格式打发时间
-
查看类似的帖子stackoverflow.com/questions/1787939/…希望对您有所帮助。
-
最近的 ffmpeg 版本有一个
-to选项,因此您不必计算-t参数的时间。见:ffmpeg.org/ffmpeg-all.html#Main-options
标签: javascript html time timestamp