【问题标题】:How can I get the Year and Month between the begin and end day? [duplicate]如何在开始日和结束日之间获取年份和月份? [复制]
【发布时间】:2017-07-22 02:19:57
【问题描述】:

我有两天。(开始和结束的日子) 如何获取这两天之间的年份和月份?

例如: 开始日期:2016 年 6 月 1 日星期三 00:00:00 GMT+0900 (JST) 结束日:2017 年 4 月 1 日星期六 00:00:00 GMT+0900 (JST)

结果:['06/2016','07/2016','08/2016','09/2016','10/2016','11/2016','12/2016','01 /2017','02/2017','03/2017','04/2017']

【问题讨论】:

标签: javascript


【解决方案1】:

使用moment.js 库:

function getDates(startDate, stopDate) {
        var dateArray = [];
        var currentDate = moment(startDate);
        var stopDate = moment(stopDate);
        while (currentDate <= stopDate) {
            dateArray.push( moment(currentDate).format('YYYY-MM-DD') )
            currentDate = moment(currentDate).add(1, 'days');
        }
        return dateArray;
    }

记得更改format 以根据您的日期格式使用。


如果您不能(或不想)使用 momentjs 库,您可以执行以下操作:

var start = new Date("Wed Jun 01 2016 00:00:00"),
    end = new Date("Sat Apr 01 2017 00:00:00"),
    currentDate = new Date(start.getTime()),
    between = [];

while (currentDate <= end) {
    between.push(new Date(currentDate));
    currentDate.setDate(currentDate.getDate() + 1);
}

【讨论】:

  • 我更改了格式“YYYY-MM”并添加了“if”,因为我只想获取不同的月份记录。然后我可以得到我想要的结果。非常感谢你! while (currentDate
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-10
  • 2021-09-19
相关资源
最近更新 更多