我如何获得开始日期和结束日期之间的月和年

问题描述:

我正在寻找解决方案,但我没有得到我除了。我如何获得开始日期和结束日期之间的月和年

案例:开始日期:10/17/2017和结束日期:02/23/2018 从我想几个月甚至几年的阵列格式像下面

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

请让我知道你的建议,这些日期范围。提前致谢。

+3

欢迎SO。请访问[帮助],看看有什么和如何问。建议:发布工作量和代码,但在修复拼写错误后,首先在Google中搜索您的标题:https://www.google.com/search?q=array+of+months+and+years+between+start+date+and+结束+日期+ javascript – mplungjan

+0

为什么你不使用Date对象来存储日期?你可以使用JS库来做一些符合你的描述的东西 - http://*.com/a/21293157/2344348。 –

+1

重复的http://*.com/a/21293157/2344348 –

我很好奇,所以我写了它 - 不妨发布它。 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);