Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 以HH:mm格式计算时间差_Javascript_Timestamp - Fatal编程技术网

Javascript 以HH:mm格式计算时间差

Javascript 以HH:mm格式计算时间差,javascript,timestamp,Javascript,Timestamp,我有两个HH:mm格式的时间戳,我需要计算它们之间的差异,表示相同HH:mm格式的时间间隔 JavaScript中有没有实现这一点的实用程序?我尝试使用Date对象,但找不到有用的东西。。。你能帮我个忙吗?你只需将两个日期相减,结果将以毫秒为单位 从 由于Date有一个接受毫秒作为参数的构造函数,您可以通过执行以下操作将其重新转换为日期 var difference = new Date(elapsed); //If you really want the hours/minutes, //D

我有两个
HH:mm
格式的时间戳,我需要计算它们之间的差异,表示相同
HH:mm
格式的时间间隔


JavaScript中有没有实现这一点的实用程序?我尝试使用
Date
对象,但找不到有用的东西。。。你能帮我个忙吗?

你只需将两个日期相减,结果将以毫秒为单位

由于Date有一个接受毫秒作为参数的构造函数,您可以通过执行以下操作将其重新转换为日期

var difference = new Date(elapsed);
//If you really want the hours/minutes, 
//Date has functions for that too:
var diff_hours = difference.getHours();
var diff_mins = difference.getMinutes();
你可以试试这个

和格式化输出

或者,如果使用jquery,您可以尝试


假设tim1是一个类似“09:15”的字符串,tim2是一个类似“19:05”的字符串,那么tim2和tim1之间的差异可以通过以下javascript代码得出:-

var tim1='09:15',tim2='19:05';
var ary1=tim1.split(':'),ary2=tim2.split(':');
var minsdiff=parseInt(ary2[0],10)*60+parseInt(ary2[1],10)-parseInt(ary1[0],10)*60-parseInt(ary1[1],10);
alert(String(100+Math.floor(minsdiff/60)).substr(1)+':'+String(100+minsdiff%60).substr(1));
大概是这样的:

​var t1 = '12:04'.split(':'), t2 = '3:45'​​​​​​​.split(':');
var d1 = new​ Date(0, 0, 0, t1[0], t1[1]),
    d2 = new Date(0, 0, 0, t2[0], t2[1]);
var diff = new Date(d1 - d2);

请看一下这个,我如何将
HH:mm
字符串解析为
Date
对象?您阅读过MDN日期API吗?有很多种方法,但有两种方法需要考虑:使用
新日期(年、月、日[、小时、分钟、秒、毫秒])
构造函数,或者创建一个新日期并使用
setHours
&
setMinutes
。如何获得Date=“2016/03/01 11:00”到Date=“2016/03/06 11:00”之间的时间差我建议使用getUTCHours()和getUTCMinutes(),以处理时区问题;var t2=jstop.split(“:”);var min_1=parseInt(t1[0])*60+parseInt(t1[1]);var min_2=parseInt(t2[0])*60+parseInt(t2[1]);console.log((min_2-min_1))<代码>代码
​var t1 = '12:04'.split(':'), t2 = '3:45'​​​​​​​.split(':');
var d1 = new​ Date(0, 0, 0, t1[0], t1[1]),
    d2 = new Date(0, 0, 0, t2[0], t2[1]);
var diff = new Date(d1 - d2);