logo

Javascript 日付の比較

前のセクションでは、日付メソッドとコンストラクターについて説明しました。

ここでは、これらのメソッドを利用して、日付を比較する方法を学びます。

基本的に、日付を比較するには次のようなさまざまな方法があります。

  1. 2 つの日付を相互に比較します。
  2. 日付と時刻を比較します。
  3. getTime() を使用した日付の比較

2 つの日付を相互に比較する

例:

 Comparing Dates<br> function compare() { var d1=new Date(&apos;2020-01-23&apos;); //yyyy-mm-dd var d2=new Date(&apos;2020-01-21&apos;); //yyyy-mm-dd if(d1&gt;d2) { document.write(&apos;True, First date is greater than second date&apos;); } else if(d1<d2) { document.write('false, second date is smaller than the first'); } else document.write('both are same and equal'); compare(); invoking compare() < pre> <span> Test it Now </span> <h2>Comparing date with time</h2> <p> <strong>Example 1:</strong> Comparing different dates with different timings</p> <pre> Comparing Date and time<br> var d1=new Date(&apos;Apr 17, 2019 12:10:10&apos;); //mm dd, yyyy hh:mm:ss var d2=new Date(&apos;Dec 1, 2019 12:10:30&apos;); //mm dd, yyyy hh:mm:ss if(d1&gt;d2) { document.write(&apos;False, d1 date and time is smaller than d2 date and time&apos;); } else if(d1<d2) { document.write('true, d2 is greater in terms of both time and date'); } else document.write('both date are same equal'); < pre> <span> Test it Now </span> <p> <strong>Example2:</strong> Comparing same dates with disimilar timings</p> <pre> Comparing same date but different time<br> var d1=new Date(&apos;2018-01-10, 12:10:10&apos;); //yyyy-mm-dd hh:mm:ss var d2=new Date(&apos;2018-01-10, 12:10:50&apos;); //yyyy-mm-dd hh:mm:ss if(d1&gt;d2) { document.write(&apos;False, d1 &amp; d2 dates are same but d2 time is greater than d1 time&apos;); } else if(d1<d2) { document.write('true, d2 time is greater than d1 time.'); } else document.write('both date and are same equal'); < pre> <span> Test it Now </span> <h2>Comparing date with getTime()</h2> <p>A better approach to make comparison between dates is to use <strong>getTime()</strong> function. This function lets converting date into numeric value to directly compare them. </p> <p> <strong>Example1:</strong> Comparing current date and time with a given date and time.</p> <pre> Comparing Dates<br> var d1=new Date(&apos;2019-10-10, 10:10:10&apos;); //yyyy-mm-dd hh:mm:ss var currentdate=new Date(); //fetch the current date value if(d1.getTime()currentdate.getTime()) { document.write(&apos;False&apos;); } else { document.write(&apos;True, equal&apos;); } </pre> <span> Test it Now </span> <p> <strong>Example2:</strong> Comparing two different dates with different timings.</p> <pre> Comparing Dates<br> var d1=new Date(&apos;2019-10-10, 10:10:10&apos;); var d2=new Date(&apos;2019-11-02, 14:19:05&apos;); if(d1.getTime()d2.getTime()) { document.write(&apos;False, d2 date and time are greater than d1&apos;); } else { document.write(&apos;True, d1 and d2 have same time and date&apos;); } </pre> <span> Test it Now </span> <p>Thus, we can compare dates in many possible ways.</p> <h2>Changing Date Format</h2> <p>We can also change or set the format through JavaScript code. The function getFullYear(), GetMonth(), and getDate() allows to set the format of date accordingly.</p> <p> <strong>Example1:</strong> Changing the date format to &apos;yyyy-mm-dd&apos;.</p> <pre> <h3>Changing date format</h3><br> var current_date=new Date(); //fetches current date var set_to=current_date.getFullYear()+&apos;-&apos;+(current_date.getMonth()+1)+&apos;-&apos;+current_date.getDate(); document.write(&apos;The format followed is yyyy-dd-mm: &apos;+set_to); </pre> <span> Test it Now </span> <p>We can also set the date and time format according to our need.</p> <p> <strong>Example2:</strong> Changing the datetime format to &apos;yyyy-dd-mm hh:mm:ss&apos;.</p> <pre> <h3>Changing date format</h3><br> var current_datetime=new Date(); //fetches current date and time var set_to=current_datetime.getFullYear()+&apos;-&apos;+(current_datetime.getMonth()+1)+&apos;-&apos;+current_datetime.getDate()+&apos; &apos;+current_datetime.getHours()+&apos;:&apos;+current_datetime.getMinutes()+&apos;:&apos;+current_datetime.getSeconds(); document.write(&apos;The format followed is yyyy-dd-mm hh:mm:ss : &apos;+set_to); </pre> <span> Test it Now </span> <hr></d2)></pre></d2)></pre></d2)>
今すぐテストしてください

例2: 異なるタイミングの 2 つの異なる日付を比較します。

 Comparing Dates<br> var d1=new Date(&apos;2019-10-10, 10:10:10&apos;); var d2=new Date(&apos;2019-11-02, 14:19:05&apos;); if(d1.getTime()d2.getTime()) { document.write(&apos;False, d2 date and time are greater than d1&apos;); } else { document.write(&apos;True, d1 and d2 have same time and date&apos;); } 
今すぐテストしてください

したがって、さまざまな方法で日付を比較できます。

日付形式の変更

JavaScript コードを使用して形式を変更または設定することもできます。関数 getFull Year()、GetMonth()、および getDate() を使用すると、それに応じて日付の形式を設定できます。

例1: 日付形式を「yyyy-mm-dd」に変更します。

 <h3>Changing date format</h3><br> var current_date=new Date(); //fetches current date var set_to=current_date.getFullYear()+&apos;-&apos;+(current_date.getMonth()+1)+&apos;-&apos;+current_date.getDate(); document.write(&apos;The format followed is yyyy-dd-mm: &apos;+set_to); 
今すぐテストしてください

必要に応じて日付と時刻の形式を設定することもできます。

例2: 日時形式を「yyyy-dd-mm hh:mm:ss」に変更します。

 <h3>Changing date format</h3><br> var current_datetime=new Date(); //fetches current date and time var set_to=current_datetime.getFullYear()+&apos;-&apos;+(current_datetime.getMonth()+1)+&apos;-&apos;+current_datetime.getDate()+&apos; &apos;+current_datetime.getHours()+&apos;:&apos;+current_datetime.getMinutes()+&apos;:&apos;+current_datetime.getSeconds(); document.write(&apos;The format followed is yyyy-dd-mm hh:mm:ss : &apos;+set_to); 
今すぐテストしてください