如何在开始日期和结束日期之间获得数月和数年

时间:2017-04-18 14:28:02

标签: javascript jquery

我正在寻找解决方案,但我没有得到我的意思。

案例:开始日期:10/17/2017和结束日期:02/23/2018       从这些日期范围开始,我希望以数组格式获得数月和数年,如下所示

      array 1
      - 2017
         -10
         -11
         -12
      array 2
      - 2018
         -01
         -02

请告诉我你的建议。提前谢谢。

1 个答案:

答案 0 :(得分:1)

我很感兴趣,所以无论如何我写了它 - 不妨发布它。 Moment.js在这里非常矫枉过正。

var obj = {}, start=new Date("10/17/2017"), end=new Date("02/23/2018");
for (var i=start.getTime(), n = end.getTime(); i<=n;) { // we update i later
  var d=new Date(i), year = d.getFullYear(), month=d.getMonth()+1;
  if (!obj[year]) obj[year] = [month]; // initialise array
  else obj[year].push(month); // add to array
  d.setMonth(month); // next month
  i = d.getTime();   // here instead of in the for statement
} 
console.log(obj);