JavaScriptで2つの日付を比較する方法をサンプルコード付き解説!

JavaScriptで2つの日付を比較するにはDateオブジェクトを使用します。Dateオブジェクトを使用することで日付の比較や計算を行うことができるようになります。この記事では2つの日付を比較する方法をサンプルコード付きで解説しています。

コンテンツ [表示]

  1. 1JavaScriptで2つの日付を比較したい
  2. 2JavaScriptで2つの日付を比較する方法
  3. 2.1Dateオブジェクトで日付を比較
  4. 2.2日付のみを比較
  5. 2.3時間のみを比較
  6. 3まとめ

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クラスのオブジェクトを使用することで日付を比較するだけでなく、日付の計算が簡単にできるようになります。ぜひ使いこなせるようになりましょう。

関連記事