前回は、Mathオブジェクトについて紹介しました。
今回は、Dateオブジェクトについて。
この Dateオブジェクト も JavaScript があらかじめ用意しているオブジェクトなので、簡単に使うことができます。
それでは見ていきましょう。
Dateオブジェクト
Dateオブジェクトは、日付を扱うための組み込み関数です。
それでは実際に使っていきます。
Dateオブジェクトを生成する
Dateオブジェクトは、new を使って、インスタンスを生成するところから始まります。
const day1 = new Date();
day1 という変数(値の書き換えを禁止したものですが)にインスタンス化されたものが代入されているわけです。
それでは実際に中身を見てみましょう。
console.log(day1);

インスタンス化されたときの日時が表示されるわけです。
現時点での年を取得する
現時点での年を取得するには、getFullYearメソッドを使います。
const day1 = new Date(); console.log(day1.getFullYear());
結果は以下の通りです。

現時点での月を取得する
現時点での月を取得するには、getMonthメソッドを使います。
ただし注意点として、1月~12月を 0~11 の整数値で割り当てているため、0 が 1月、1 が 2月 というように 1 ずれた数字が取得されます。
ということは、以下のようにすれば良いということになります。
const day1 = new Date(); console.log(day1.getMonth() + 1);
結果は以下の通りです。

現時点での日を取得する
現時点での日を取得するには、getDateメソッドを使います。
const day1 = new Date(); console.log(day1.getDate());
結果は以下の通りです。

現時点での曜日を取得する
現時点での曜日を取得するには、getDayメソッドを使います。
const day1 = new Date(); console.log(day1.getDay());
ただし、数字が表示され、日曜日なら 0、月曜日なら 1 というように 0~6 の数字が割り当てられています。

今回の場合は、月曜日ということです。
日付の加算・減算
おそらく日付の加算・減算処理は使う機会が多いと思うので紹介します。
こちらも非常に簡単です。
そういえば、小学生のときに日暦算みたいなのがありましたね。
// 本日の日付を取得 const day1 = new Date(); // 本日から90日後の日を設定 day1.setDate( day1.getDate() + 90 ); // 値を確認 console.log(day1);
setDateメソッドで日を設定しています。
getDateメソッドは日付の日を取得しています。
結果は以下の通りです。

日付の減算も同じようにできます。
// 本日の日付を取得 const day1 = new Date(); // 本日から37日前の日を設定 day1.setDate( day1.getDate() - 37 ); // 値を確認 console.log(day1);
結果は以下の通りです。

const を使うか let を使うか迷ったのですが、オブジェクトの要素に関しては変更できるみたいなので、とりあえず const を使っています。
最後に
いかがでしょうか。
日時の計算もわりと使いそうなので紹介しました。