我正在尝试计算两个JS日期之间的天数差异。 我有一个在Firefox中运行良好的功能:
function timeDiffDays(date01,date02){
return Math.abs(Math.ceil( (date01.getTime() - date02.getTime()) /1000/60/60/24 ));
}
date01=2013/11/06 //Wed 6th November 2013
date02=2013/11/04 //Mon 4th November 2013
FF:
date01 = 1383741491140; date02 = 1383568691000;
所以天数的最终差异:2.0000016203703703,Math.ceil()=正确3
但在Safari(WEBKIT)中:
date01 = 1383741564156; date02 = 1383568764156;
天数的最终差异:2,使用Math.ceil()=错误2
为了解决这个问题,我必须在几小时,几分钟和几秒钟内完成日期:
date01.setHours(12);date01.setMinutes(11);date01.setSeconds(10);
date02.setHours(12);date02.setMinutes(5);date02.setSeconds(11);
如果明确设置相同或仅1秒的差异,则结果出错。 有没有更好的方法呢?