JavaScript - 今月(特定の月)の1日、最後の日

今月、または特定の月の1日と最後の日を見つける方法を紹介します。

1. 特定月の1日と最終日の計算

new Date(year=2022, month=2, day=1) は 22 年 3 月 1 日の Date オブジェクトを生成します。月は1月が0から始まるので、3月は2を引数に渡す必要があります。

let firstDate = new Date(2022, 2, 1);
console.log(firstDate.toLocaleString())  //Output: 3/1/2022, 12:00:00 AM

3月の最後の日は4月1日から1日を除くと3月の最後の日になります。 したがって、以下のように4月1日のDateオブジェクトから1日を引くだけです。

let lastDate = new Date(2022, 3, 0);
console.log(lastDate.toLocaleString())  //Output: 3/31/2022, 12:00:00 AM

2. 今月の1日と最後の日の計算

特定の月の計算方法を使って、今月の1日と最後の日を計算するだけです。

代わりに、 new Date() で今日の Date オブジェクトを作成し、このオブジェクトから年、月、日情報を取得する必要があります。

次のように年と月を取得し、上記のように今月の1日を探し、翌月の1日から1日を減算して今月の最終日を計算できます。

let today = new Date();
console.log("today: " + today.toLocaleString())

let firstDate = new Date(today.getFullYear(), today.getMonth(), 1);
console.log("first: " + firstDate.toLocaleString())

let lastDate = new Date(today.getFullYear(), today.getMonth() + 1, 0);
console.log("last: " + lastDate.toLocaleString())

Output:

today: 9/3/2022, 10:25:47 AM
first: 9/1/2022, 12:00:00 AM
last: 9/30/2022, 12:00:00 AM

3. Dateから年、月、日をインポートする

Date.getFullYear(), Date.getMonth(), Date.getDate() は Date オブジェクトの年、月、日情報を取得します。

let today = new Date();

let firstDate = new Date(today.getFullYear(), today.getMonth(), 1);
console.log("first: " + firstDate.toLocaleString())
console.log("Year: " + firstDate.getFullYear())
console.log("Month: " + firstDate.getMonth())
console.log("Day: " + firstDate.getDate())

Output:

first: 9/1/2022, 12:00:00 AM
Year: 2022
Month: 8
Day: 1
codechachaCopyright ©2019 codechacha