Päivämäärän oikeellisuuden tarkistus JavaScriptissä
Opitaan nyt tarkistamaan päivämäärän
oikeellisuus. Esimerkiksi 31 tammikuuta
on oikea päivämäärä, kun taas 32 tammikuuta
on virheellinen. Kuten tiedät, JavaScript
korjaa päivämäärät automaattisesti. Meidän
tapauksessamme tämä tarkoittaa, että 32 tammikuuta muuttuu automaattisesti
1 helmikuuta.
Tätä JavaScriptin ominaisuutta voidaan käyttää päivämäärän olemassaolon tarkistamiseen. Miten tarkistamme: luomme objektin päivämäärällä ja katsomme, muuttuivatko päivämäärän osat vai eivät. Toisin sanoen, suorittiko JavaScript päivämäärämme korjauksen vai ei. Jos suoritti - tarkoittaa, että antamamme päivämäärä on virheellinen, ja jos ei suorittanut - oikea.
Tehdään kuvatut toimet:
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('oikea');
} else {
console.log('virheellinen');
}
Tee funktio checkDate, joka
suorittaa kuvatun tarkistuksen. Olkoon
funktio palauttaa true, jos päivämäärä
on oikea ja false, jos ei. Esimerkki
tämän funktion toiminnasta 31 tammikuuta
ja 32 tammikuuta:
console.log(checkDate(2025, 0, 31)); // tulostaa true
console.log(checkDate(2025, 0, 32)); // tulostaa false