logo

Javascript Sammenlign datoer

I det foregående afsnit diskuterede vi datometoderne samt konstruktørerne.

Her vil vi ved hjælp af de metoder lære at sammenligne datoer.

Grundlæggende er der forskellige måder, hvorpå vi kan sammenligne datoer, såsom:

  1. Sammenligning af to dates med hinanden.
  2. Sammenligning af dato med tid.
  3. Sammenligning af datoer ved hjælp af getTime()

Sammenligning af to dates med hinanden

Eksempel:

 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)>
Test det nu

Eksempel 2: Sammenligning af to forskellige datoer med forskellige tidspunkter.

 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;); } 
Test det nu

Således kan vi sammenligne datoer på mange mulige måder.

Ændring af datoformat

Vi kan også ændre eller indstille formatet gennem JavaScript-kode. Funktionen getFullYear(), GetMonth() og getDate() gør det muligt at indstille datoformatet i overensstemmelse hermed.

Eksempel 1: Ændring af datoformatet til 'åååå-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); 
Test det nu

Vi kan også indstille dato og klokkeslæt format efter vores behov.

Eksempel 2: Ændring af datetime-formatet til 'åååå-dd-mm tt: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); 
Test det nu