JavaScriptで手軽に日付範囲を指定して、配列を作成する方法を紹介する。

まずは下記のサンプルコードを見てもらおう。

var startDate = new Date("2021-04-14");
var endDate = new Date("2021-04-24");
var dateList = new Array();

for(var d = startDate; d <= endDate; d.setDate(d.getDate()+1)) {
  var formatedDate = d.getFullYear()+'-'+(d.getMonth()+1)+'-'+d.getDate();

  dateList.push(formatedDate);
}

console.log(dateList);
// 出力結果
// [object Array] (11)
// ["2021-4-14","2021-4-15","2021-4-16","2021-4-17","2021-4-18","2021-4-19","2021-4-20","2021-4-21","2021-4-22","2021-4-23","2021-4-24"]

はじめに、範囲指定の開始日と終了日を1〜2行目で定義する。

5行目のfor文が今回のポイントで、d.setDate(d.getDate()+1)とすることで日付のインクリメントを実現している。

あとは3行目であらかじめ用意しておいた配列にpushしていくことで、日付範囲を格納した配列を生成することができる。