JavaScript:
Porównywanie dwóch dat
Jak to zrobić:
// Tworzenie dwóch dat
const date1 = new Date('2023-04-01');
const date2 = new Date('2023-04-02');
// Porównywanie dat
console.log(date1 < date2); // true
console.log(date1 > date2); // false
console.log(date1.getTime() === date2.getTime()); // false
// Różnica czasu w milisekundach
const timeDiff = date2 - date1;
console.log(timeDiff); // 86400000 (milisekundy)
// Różnica w dniach
const daysDiff = timeDiff / (1000 * 60 * 60 * 24);
console.log(daysDiff); // 1 (dzień)
Głębsze zagłębienie:
Porównywanie dat jest tak stare jak sama informatyka. Historia pokazuje, że wczesne systemy mogły mieć problem z interpretacją dat (np. problem roku 2000). Alternatywą jest używanie bibliotek takich jak Moment.js lub Date-fns, które oferują bardziej rozbudowane narzędzia do pracy z datami. W przypadku JavaScript, porównujemy daty przekształcając je na milisekundy (metoda .getTime()
) lub poprzez bezpośrednie odjęcie dat od siebie, co JavaScript postrzega jako różnicę w milisekundach. Uwaga: należy pamiętać o strefach czasowych i praktykować użycie UTC przy porównywaniach.