2017-08-09 191 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) 
相關問題