我有两个日期,格式为YYYY-MM-DD HH:MI:SS。 我想计算两个日期之间的差异,并将其添加到另一个日期,该日期也是上述格式。 请给我一个解决方案。
答案 0 :(得分:1)
以下是如何操作的示例:
var date1 = "2014-06-01 14:00:00";
var date2 = "2014-06-02 14:00:00";
date1 = new Date(date1.replace(' ', 'T'));
date2 = new Date(date2.replace(' ', 'T'));
var diff = Math.abs(date2.getTime() - date1.getTime());
console.log(diff);
diff
的值将是两个日期之间的差异,以毫秒为单位。
需要replace(' ', 'T')
部分,因为Firefox无法解析2014-05-03 14:00:00
(它返回NaN
)。因此,在将值传递给2014-05-03T14:00:00
之前,需要将值转换为new Date()
。
修改:要将此差异添加到第三个日期,您可以使用getTime()
和setTime()
功能:
var date3 = "2014-06-03 14:00:00";
date3 = new Date(date3.replace(' ', 'T'));
date3.setTime(date3.getTime() + diff);
console.log(date3);
在JSFiddle上查看。