JavaScriptで2つの日付を比較する方法をサンプルコード付き解説!
JavaScriptで2つの日付を比較するにはDateオブジェクトを使用します。Dateオブジェクトを使用することで日付の比較や計算を行うことができるようになります。この記事では2つの日付を比較する方法をサンプルコード付きで解説しています。
JavaScriptで2つの日付を比較したい
2つの日付があり、そのどちらがより過去の日付かどちらがより新しい日付かチェックするために2つの日付を比較する必要があります。
JavaScriptで2つの日付を比較したい場合には、Date
オブジェクトを使用します。Date
オブジェクトを用いることで日付の比較や計算を行うことができるようになります。
この記事ではJavaScriptのDate
オブジェクトを使って、日付を比較する方法をサンプルコード付きで解説していきます。
JavaScriptで2つの日付を比較する方法
Dateオブジェクトで日付を比較
Date
オブジェクトを生成する際に引数に日付を表す文字列を指定することで、指定した日付を表すDate
オブジェクトを生成することができます。引数を指定しなかった場合は現在時刻を表すDate
オブジェクトを生成することができます。
比較演算子で比較
生成された2つのDate
オブジェクトは比較演算子を使って日付の大小を比較することができます。新しい日付の方が大きい値として判定されます。
大小の比較をするだけならDate
オブジェクトを比較することで判定することができますが、同じ日付かどうかをDate
オブジェクトを等値演算子で判定した場合上手く動作しません。
等値演算子でDate
オブジェクトを比較したときは2つのDate
オブジェクトが同じ日付かどうかをチェックするのではなく、2つのDate
オブジェクトが一致するかどうかをチェックします。2つのDate
オブジェクトは日付は同じですが、異なるオブジェクトのため等値演算子で比較するとtrue
ではなくfalse
を返します。
そのため2つの日付が同じ日付かどうかをチェックするためにはgetTime
メソッドを使います。
getTimeメソッドを使って比較
getTime
メソッドを使うことでDate
オブジェクトの日付からミリ秒に変換した数値を取得することができます。そのミリ秒の数値を比較することで2つの日付が同じ日付かどうかをチェックすることが出来るようになります。
日付のみを比較
年月日の日付のみを比較したい場合はDate
オブジェクトのメソッドを活用していくことで比較できます。
年を取得するにはgetFullYear
メソッドを使用します。月はgetMonth
メソッド、日はgetDate
メソッドを使用することで取得できます。
2つのDate
オブジェクトから取得された年月日を年、月、日の順番で比較していくことで2つの日付のみを比較することができます。
時間のみを比較
時間のみを比較する場合も日付のみ比較する場合と基本的な方法は同じです。
時を取得するにはgetHours
メソッド、分はgetMinutes
メソッド、秒はgetSeconds
メソッドを使用します。取得したものを時、分、秒の順番で比較していきます。
まとめ
JavaScriptで2つの日付を比較する方法を紹介してきました。Date
クラスのオブジェクトを使用することで日付を比較するだけでなく、日付の計算が簡単にできるようになります。ぜひ使いこなせるようになりましょう。