2014-01-26 44 views
1

好的,所以我想要做的是獲取2個不同日期之間的時間值。Javascript獲取2個日期的時間差

例如:

date1 = 3/2/2014 - 14:12 

date2 = 4/2/2014 - 16:22 

我怎麼才能DATE1和date2之間的時間差? (26小時,10分鐘)< - 這將是我想要的完美輸出。

我,在分析方法一看,如果我理解正確的話,我想我可以做這樣的事情,使這項工作:

myDate = date1; 

myDate.parse(date2); 

然後轉換輸出如何,我想它從那裏,但我沒有看到任何需要考慮一天的時間的例子。

+0

[比較兩個使用JavaScript日期(的可能的複製https://stackoverflow.com/questions/492994/c ompare-兩日期,使用的JavaScript) – 2017-08-02 14:45:24

回答

0

您可以使用Date類,然後就減去2個日期

var difference = (new Date(2014, 2, 4, 16, 22, 0).getTime() 
        - new Date(2014, 2, 3, 14, 12, 0).getTime() 
       )/1000 

getTime()爲您提供毫秒的時間,所以你必須以1000分拿到結果秒鐘。

0

你只需要減去兩個Date對象,以獲取差別,因爲JavaScript的將其轉換爲自動權類型:

date1 - date2 //difference in milliseconds 

對於格式,你可以建立一個類似的功能:

Number.prototype.format = function(){ 
    return [ 
     (this/86400|0), "days", 
     (this/3600|0) % 24 , "hours", 
     (this/60|0) % 60 , "minutes", 
     (this|0) % 60 , "seconds" 
    ].join(" "); 
}; 

((date1 - date2)/1000).format(); //Formatted string 

演示:http://jsfiddle.net/DerekL/Prb7j/(時間格式也包括在內)

相關問題