2017-08-09 282 views
1

我需要使用node.js计算datetime差异。我正在使用dateformat包获取当前的日期时间格式。我在下面解释我的代码。如何使用Node.js计算两个日期之间的差异?

var dateFormat = require('dateformat'); 
var prev_date=2017-08-09T19:00:58+0530; 
var now = new Date(); 
var current_date=dateFormat(now, "isoDateTime"); 

这里我已经是上一个日期了,也是现在的datetime也是。我需要分别以小时,分钟和秒计算两个日期之间的差异。

+0

使用'moment'而不是'dateformat'。 – alexmac

+0

http://momentjs.com/docs/#/manipulating/ – richie

回答

1
let firstDate = new Date("7/13/2016"), 
    secondDate = new Date("09/15/2017"), 
    timeDifference = Math.abs(secondDate.getTime() - firstDate.getTime()); 

console.log(timeDifference); 
alert(timeDifference) 

如果你想两个日期之间的天数...

let differentDays = Math.ceil(timeDifference/(1000 * 3600 * 24)); 

console.log(differentDays); 
alert(differentDays); 

您也可以使用Moment.js https://momentjs.com/docs/

console.log(moment.utc(moment(firstDate,"DD/MM/YYYY HH:mm:ss").diff(moment(secondDate,"DD/MM/YYYY HH:mm:ss"))).format("HH:mm:ss")) 
0

如果你想计算day-两个日期之间的差异,你不需要任何包。你可以使用简单的JavaScript。

var date1 = new Date("08/09/2017"); 
var date2 = new Date("08/10/2017"); 
var diffDays = parseInt((date2 - date1)/(1000 * 60 * 60 * 24)); //gives day difference 
//one_day means 1000*60*60*24 
//one_hour means 1000*60*60 
//one_minute means 1000*60 
//one_second means 1000 
console.log(diffDays) 
相关问题