我在尋找最簡潔的解決下面的問題中的JavaScript之間發生的天數:計算二日期
我想確定在JavaScript中的兩個日期之間發生的天數。我不是在尋找天的日期的差異,例如:
日期1:2012年6月26日下午11時05
日期2:2012年6月27日上午12:15
我用的是下面的代碼行:
var days = Math.ceil((date2 - date1)/86400000);
我的結果是1,我想這是2(算上6月26日和6月27日)
我在尋找最簡潔的解決下面的問題中的JavaScript之間發生的天數:計算二日期
我想確定在JavaScript中的兩個日期之間發生的天數。我不是在尋找天的日期的差異,例如:
日期1:2012年6月26日下午11時05
日期2:2012年6月27日上午12:15
我用的是下面的代碼行:
var days = Math.ceil((date2 - date1)/86400000);
我的結果是1,我想這是2(算上6月26日和6月27日)
刪除日期的時間部分,然後做日期扣除。請參閱this jsfiddle或下面的代碼段。
var d1 = new Date('June 26th 2012 11:05 PM'.replace('th',''));
var d2 = new Date('June 27th 2012 12:15 AM'.replace('th',''));
// remove the time portion, set the dates to midnight
d1.setHours(0,0,0,0);
d2.setHours(0,0,0,0);
var diff = Math.ceil((d2 - d1)/86400000) + 1;
console.log(diff);
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date
將小時,分鐘,秒和毫秒設置爲全零。現在你有兩個同時在他們身上的日期。現在,您可以按照您一直這樣做的方式進行操作,並獲得正確的答案。
什麼,如果date2的
Sebas
@ Sebas在我的情況下,我會始終假設一個積極的結果。 – dmck
嗯我真的很困惑,基本上你只想要2個數字代表2個給定日期的月份之間的差異?所以區別從1到31,不是嗎? – Sebas