Έλεγχος ορθότητας ημερομηνίας σε JavaScript

Ας μάθουμε τώρα πώς να ελέγχουμε αν μια ημερομηνία είναι ορθή. Για παράδειγμα, η 31 Ιανουαρίου είναι μια ορθή ημερομηνία, ενώ η 32 Ιανουαρίου είναι μη ορθή. Όπως γνωρίζετε, το JavaScript διορθώνει αυτόματα τις ημερομηνίες. Στην περίπτωσή μας αυτό σημαίνει ότι η 32 Ιανουαρίου θα γίνει αυτόματα 1 Φεβρουαρίου.

Αυτή η ιδιότητα του JavaScript μπορεί να χρησιμοποιηθεί για να ελέγξουμε αν μια ημερομηνία υπάρχει. Πώς θα ελέγξουμε: θα δημιουργήσουμε ένα αντικείμενο ημερομηνίας και θα ελέγξουμε αν έχουν αλλάξει τα μέρη της ημερομηνίας ή όχι. Με άλλα λόγια, αν το JavaScript εκτέλεσε διόρθωση στην ημερομηνία μας ή όχι. Αν την εκτέλεσε - σημαίνει ότι η ημερομηνία που περάσαμε είναι μη ορθή, ενώ αν δεν την εκτέλεσε - είναι ορθή.

Ας κάνουμε όσα περιγράψαμε:

javascriptlet 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('ορθή');
} else {
  console.log('μη ορθή');
}
Задание 1

Δημιουργήστε μια συνάρτηση checkDate, η οποία θα εκτελεί τον περιγραφόμενο έλεγχο. Αφήστε την συνάρτηση να επιστρέφει true, αν η ημερομηνία είναι ορθή και false, αν δεν είναι. Παράδειγμα λειτουργίας αυτής της συνάρτησης για την 31 Ιανουαρίου και την 32 Ιανουαρίου:

javascriptconsole.log(checkDate(2025, 0, 31)); // θα εμφανίσει true
console.log(checkDate(2025, 0, 32)); // θα εμφανίσει false