前のセクションでは、日付メソッドとコンストラクターについて説明しました。
ここでは、これらのメソッドを利用して、日付を比較する方法を学びます。
基本的に、日付を比較するには次のようなさまざまな方法があります。
- 2 つの日付を相互に比較します。
- 日付と時刻を比較します。
- getTime() を使用した日付の比較
2 つの日付を相互に比較する
例:
Comparing Dates<br> function compare() { var d1=new Date('2020-01-23'); //yyyy-mm-dd var d2=new Date('2020-01-21'); //yyyy-mm-dd if(d1>d2) { document.write('True, First date is greater than second date'); } 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('Apr 17, 2019 12:10:10'); //mm dd, yyyy hh:mm:ss var d2=new Date('Dec 1, 2019 12:10:30'); //mm dd, yyyy hh:mm:ss if(d1>d2) { document.write('False, d1 date and time is smaller than d2 date and time'); } 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('2018-01-10, 12:10:10'); //yyyy-mm-dd hh:mm:ss var d2=new Date('2018-01-10, 12:10:50'); //yyyy-mm-dd hh:mm:ss if(d1>d2) { document.write('False, d1 & d2 dates are same but d2 time is greater than d1 time'); } 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('2019-10-10, 10:10:10'); //yyyy-mm-dd hh:mm:ss var currentdate=new Date(); //fetch the current date value if(d1.getTime()currentdate.getTime()) { document.write('False'); } else { document.write('True, equal'); } </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('2019-10-10, 10:10:10'); var d2=new Date('2019-11-02, 14:19:05'); if(d1.getTime()d2.getTime()) { document.write('False, d2 date and time are greater than d1'); } else { document.write('True, d1 and d2 have same time and date'); } </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 'yyyy-mm-dd'.</p> <pre> <h3>Changing date format</h3><br> var current_date=new Date(); //fetches current date var set_to=current_date.getFullYear()+'-'+(current_date.getMonth()+1)+'-'+current_date.getDate(); document.write('The format followed is yyyy-dd-mm: '+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 'yyyy-dd-mm hh:mm:ss'.</p> <pre> <h3>Changing date format</h3><br> var current_datetime=new Date(); //fetches current date and time var set_to=current_datetime.getFullYear()+'-'+(current_datetime.getMonth()+1)+'-'+current_datetime.getDate()+' '+current_datetime.getHours()+':'+current_datetime.getMinutes()+':'+current_datetime.getSeconds(); document.write('The format followed is yyyy-dd-mm hh:mm:ss : '+set_to); </pre> <span> Test it Now </span> <hr></d2)></pre></d2)></pre></d2)>今すぐテストしてください
例2: 異なるタイミングの 2 つの異なる日付を比較します。
Comparing Dates<br> var d1=new Date('2019-10-10, 10:10:10'); var d2=new Date('2019-11-02, 14:19:05'); if(d1.getTime()d2.getTime()) { document.write('False, d2 date and time are greater than d1'); } else { document.write('True, d1 and d2 have same time and date'); }今すぐテストしてください
したがって、さまざまな方法で日付を比較できます。
日付形式の変更
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()+'-'+(current_date.getMonth()+1)+'-'+current_date.getDate(); document.write('The format followed is yyyy-dd-mm: '+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()+'-'+(current_datetime.getMonth()+1)+'-'+current_datetime.getDate()+' '+current_datetime.getHours()+':'+current_datetime.getMinutes()+':'+current_datetime.getSeconds(); document.write('The format followed is yyyy-dd-mm hh:mm:ss : '+set_to);今すぐテストしてください