计算日期之间的天数,不同的月份

苹果电脑

所以我在玩 JavaScript 的 Date 对象,我遇到了一些我认为有点奇怪的东西。
我想弄清楚两个给定日期之间有多少天,为此我使用以下公式:

var oneDay = 24*60*60*1000;
var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));

如果您使用 2017-05-28 和 2017-05-30,它将返回2 天- 应该如此

var oneDay = 24*60*60*1000;
var firstDate = new Date(2017, 05, 28);
var secondDate = new Date(2017, 05, 30);
var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));

如果您使用 2017-05-30 和 2017-06-01,它将返回1 天- 应该是 2 天

var oneDay = 24*60*60*1000;
var firstDate = new Date(2017, 05, 28);
var secondDate = new Date(2017, 05, 30);
var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));

如果您使用 2017-05-30 和 2017-06-01,它将返回3 天- 应该是 2 天

var oneDay = 24*60*60*1000;
var firstDate = new Date(2017, 11, 29);
var secondDate = new Date(2017, 12, 01);
var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));
苹果电脑

我用了 1.5 小时试图找出问题所在 - 发布后 10 秒我弄清楚了。

问题是,日期对象需要:

  • 一月,作为 0
  • 二月,作为 1
  • ...
  • ...
  • 十一月,作为 10
  • 十二月,作为 11

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章