logo

Javascript Comparer les dates

Dans la section précédente, nous avons discuté des méthodes de date ainsi que des constructeurs.

Ici, avec l’aide de ces méthodes, nous apprendrons à comparer les dates.

Fondamentalement, il existe différentes manières de comparer les dates, telles que :

  1. Comparer deux dates entre elles.
  2. Comparer la date avec l'heure.
  3. Comparer des dates à l'aide de getTime()

Comparer deux dates entre elles

Exemple:

 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)>
Testez-le maintenant

Exemple 2 : Comparer deux dates différentes avec des horaires différents.

 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;); } 
Testez-le maintenant

Ainsi, nous pouvons comparer les dates de plusieurs manières possibles.

Changer le format de la date

Nous pouvons également modifier ou définir le format via le code JavaScript. Les fonctions getFullYear(), GetMonth() et getDate() permettent de définir le format de la date en conséquence.

Exemple 1: Modification du format de date en « aaaa-mm-jj ».

 <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); 
Testez-le maintenant

Nous pouvons également définir le format de la date et de l'heure en fonction de nos besoins.

Exemple 2 : Modification du format datetime en « aaaa-jj-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); 
Testez-le maintenant