zukucode
主にWEB関連の情報を技術メモとして発信しています。

JavaScript 月初/月末の日付を取得する

JavaScript システム日付を取得するでシステム日付を取得する方法を紹介しましたが、今回は指定した月の月初(1日)または月末(末日)の日付を取得します。

月初を取得する

月初は日付オブジェクトを作成するときの日にちの部分を1にするだけで取得できます。

// 月初を取得する
// date: 日付オブジェクト
function getFirstDate (date) {
  return new Date(date.getFullYear(), date.getMonth(), 1);
}
var date = getFirstDate(new Date()); // システム日時の1日を取得する

月末を取得する

月末は30,31などが考えられるので月初に比べて少し工夫が必要です。

日付オブジェクトを作成するときに、月の部分を+1して翌月にしておき、日にちの部分を0にします。

日にちに0を指定すると1より1日少ない日という意味になり、すなわち前月の月末となります。

// 月初を取得する
// date: 日付オブジェクト
function getLastDate (date) {
  return new Date(date.getFullYear(), date.getMonth() + 1, 0);
}
var date = getFirstDate(new Date()); // システム日時の月末を取得する

関連記事