首页 > 解决方案 > 如何在给定开始日期和时间段的情况下获取日期数组?

问题描述

我有- startDate - 开始日期, timePeriod - 固定时期

我必须使用这两个生成日期数组。

例如,startDate 是 2020-04-17,timePeriod 是 10,

我需要从 startDate 到 10 天的日期数组,即 [2020-04-17, 2020-04-18, 2020-04-19, .....2020-04-26]

标签: javascriptnode.js

解决方案


如果您可以使用 moment.js,则使用以下函数获取日期:

function getDatesArray(startdate, timePeriod){
  var result = [];
    for(var i=0; i<timePeriod;i++){

     var newDate = moment(startdate, "YYYY-MM-DD").add('days', i).format("YYYY-MM-DD");
     result.push(newDate)


  }

  return result;
}

console.log(getDatesArray("2020-02-26", 10));

无需任何时间,您就可以使用此代码实现。

function getDatesArray(date, timePeriod) {
    var dateAr = [date]
    for(i=0;i<timePeriod-1;i++){
      var newdate = new Date(date);
      newdate.setDate(newdate.getDate() + i);
      var dd = newdate.getDate();
      var mm = newdate.getMonth() + 1;
      var y = newdate.getFullYear();
            dateAr.push(y+"-"+mm+"-"+dd)

    }
    return dateAr;
}

getDatesArray("2020-2-27", 10);


推荐阅读