Provera korektnosti datuma u JavaScriptu
Hajde sada da naučimo kako da proverimo datum na
korektnost. Na primer, 31 januar
je korektan datum, a 32 januar
je nekorektan. Kao što znate, JavaScript
automatski koriguje datume. U našem
slučaju to znači da će 32 januar automatski
postati 1 februar.
Ovo svojstvo JavaScripta možemo iskoristiti da bismo proverili da li datum postoji. Kako ćemo proveravati: kreiraćemo objekat sa datumom i pogledaćemo, da li su se delovi datuma promenili ili ne. Drugim rečima, da li je JavaScript izvršio korekciju našeg datuma ili ne. Ako jeste - znači prosleđeni datum je nekorektan, a ako nije - korektan je.
Hajde da uradimo opisanu proveru:
let year = 2025;
let month = 0;
let day = 32;
let date = new Date(year, month, day);
if (date.getFullYear() == year && date.getMonth() == month && date.getDate() == day) {
console.log('korektan');
} else {
console.log('nekorektan');
}
Napravite funkciju checkDate, koja
će vršiti opisanu proveru. Neka
funkcija vraća true, ako je datum
korektan i false, ako nije. Primer
rada ove funkcije za 31 januar
i 32 januar:
console.log(checkDate(2025, 0, 31)); // ispisaće true
console.log(checkDate(2025, 0, 32)); // ispisaće false