⊗jsPmTmSC 335 of 505 menu

Porovnávanie reťazcov s dátumami v JavaScripte

Predpokladajme, že máme dva dátumy v nasledovnom textovom formáte:

let date1 = '2020-12-01'; let date2 = '2019-12-01';

V takom prípade môžeme vykonať porovnanie týchto dátumov a zistiť, ktorý z nich je väčší:

console.log(date1 > date2); // vypíše true

Ako prebieha porovnanie týchto dátumov? Ide o to, že naše dátumy predstavujú reťazce a JavaScript ich porovnáva ako reťazce. To znamená, že najprv porovnáva prvé znaky dvoch dátumov: ak sú rovnaké, potom JavaScript porovnáva druhé znaky, a tak ďalej, kým nenájde rozdiel. Vďaka tomu, že v našom formáte dátumu je najprv umiestnený rok, potom mesiac a potom deň, je takéto porovnanie možné.

Ide o to, že ak je číslica prvého roku väčšia ako číslica druhého roku, potom už nezáleží na tom, čo je s mesiacmi a dňami - prvý rok je určite väčší. Ak sa roky zhodujú, väčší bude ten dátum, ktorý má väčší mesiac. A ak sa zhodujú aj mesiace, väčší bude ten dátum, ktorý má väčší deň. No, a ak sú aj dni rovnaké, potom sú dátumy rovnaké.

Je tiež dôležité, aby dátumy boli v rovnakom formáte. V našom prípade sú oddeľovačmi častí dátumov pomlčky. To, samozrejme, nie je nevyhnutné. Napríklad, môžeme použiť bodky:

let date1 = '2020.12.01'; let date2 = '2019.12.01';

Alebo úplne odstrániť oddeľovače:

let date1 = '20201201'; let date2 = '20191201';

Hlavné je, aby bolo porovnanie korektné, umiestnenie musí byť nasledovné: najprv rok, potom mesiac, potom deň.

Napíšte kód, ktorý porovná dva dátumy uvedené nižšie a vypíše správu o tom, ktorý z nich je väčší:

let date1 = '2020-11-30'; let date2 = '2020-12-01';
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť