Ժավսկրիպտում ամսաթվերի տողային համեմատում

Ենթադրենք, մենք ունենք երկու ամսաթիվ հետևյալ տեքստային ֆորմատով.

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

Այս դեպքում կարելի է կատարել այդ ամսաթվերի համեմատում և պարզել, թե դրանցից որն է ավելի մեծ.

javascriptconsole.log(date1 > date2); // կարտածի true

Ինչպե՞ս է կատարվում այդ ամսաթվերի համեմատումը: Բանն այն է, որ մեր ամսաթվերը ներկայացնում են տողեր, և Ժավսկրիպտը դրանք համեմատում է որպես տողեր: Այսինքն՝ այն նախ համեմատում է երկու ամսաթվերի առաջին նիշերը. եթե դրանք նույնն են, ապա Ժավսկրիպտը համեմատում է երկրորդ նիշերը, և այդպես շարունակ, մինչև գտնի տարբերություն: Շնորհիվ այն բանի, որ մեր ֆորմատում ամսաթիվը նախ տեղադրված է տարին, ապա ամիսը, և ապա օրը, հնարավոր է նման համեմատում:

Բանն այն է, որ եթե առաջին տարվա թվանշանը պարզվում է ավելի մեծ, քան երկրորդ տարվա թվանշանը, ապա արդեն նշանակություն չունի, թե ինչ կա ամիսների և օրերի հետ - առաջին տարին միանշանակ ավելի մեծ է: Եթե տարիները համընկնում են, ապա ավելի մեծ կլինի այն ամսաթիվը, որի ամիսն ավելի մեծ է: Իսկ եթե ամիսներն էլ են համընկնում, ապա ավելի մեծ կլինի այն ամսաթիվը, որի օրը ավելի մեծ է: Դե, իսկ եթե օրերն էլ նույնն են, ապա ամսաթվերը հավասար են:

Կարևոր է նաև, որ ամսաթվերը լինեն նույն ֆորմատով: Մեր դեպքում ամսաթվի մասերի բաժանարարներն են դեշերը: Սա, իհարկե, պարտադիր չէ: Օրինակ, կարելի է դնել կետեր.

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

Կամ ընդհանրապես հեռացնել բաժանարարները.

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

Հիմնականը, որպեսզի համեմատությունը լինի ճիշտ, տեղադրումը պետք է լինի հետևյալ կարգով՝ նախ տարին, ապա ամիսը, ապա օրը:

Задание 1

Գրեք կոդ, որը կհամեմատի ստորև բերված երկու ամսաթվերը և կարտածի հաղորդագրություն այն մասին, թե դրանցից որն է ավելի մեծ.

javascriptlet date1 = '2020-11-30';
let date2 = '2020-12-01';