我正在寻找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日)
答案 0 :(得分:3)
删除日期的时间部分,然后进行日期减法。请参阅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);
答案 1 :(得分:1)
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date
将小时,分钟,秒和毫秒设置为零。现在你有两个同一时间的日期。现在,您可以按照自己的方式进行操作并获得正确答案。