JavaScriptで2つの日付の間の日数を取得する方法

与えられた2つのJavaScriptDateオブジェクト、これら2つの日付の間の日(Dateオブジェクトとしても表される)のリストを取得するにはどうすればよいですか?

私はこの問題を抱えていました:2つのJavaScriptが与えられたDateオブジェクト、これら2つの日付の間の日(Dateオブジェクトとしても表される)のリストを取得するにはどうすればよいですか?

これを計算する関数は次のとおりです。

2つの日付オブジェクトをパラメーターとして取得し、日付オブジェクトの配列を返します。

const getDatesBetweenDates = (startDate, endDate) => {
  let dates = []
  //to avoid modifying the original date
  const theDate = new Date(startDate)
  while (theDate < endDate) {
    dates = [...dates, new Date(theDate)]
    theDate.setDate(theDate.getDate() + 1)
  }
  return dates
}

使用例:

const today = new Date()
const threedaysFromNow = new Date(today)
threedaysFromNow.setDate( threedaysFromNow.getDate() + 3)

getDatesBetweenDates(today, threedaysFromNow)

開始日と終了日も含めたい場合は、最後に追加するこのバージョンを使用できます。

const getDatesBetweenDates = (startDate, endDate) => {
  let dates = []
  //to avoid modifying the original date
  const theDate = new Date(startDate)
  while (theDate < endDate) {
    dates = [...dates, new Date(theDate)]
    theDate.setDate(theDate.getDate() + 1)
  }
  dates = [...dates, endDate]
  return dates
}

私の無料ダウンロードJavaScriptビギナーズハンドブック


その他のjsチュートリアル: