TypeScript:
Berechnung eines zukünftigen oder vergangenen Datums
So geht’s:
const heute = new Date();
const tageZumAddieren = 10; // Zum Beispiel für eine Deadline in 10 Tagen
const zukunftigesDatum = new Date(heute.getTime() + tageZumAddieren * 24 * 60 * 60 * 1000);
console.log(zukunftigesDatum.toString()); // Output: das zukünftige Datum als String
const tageZumSubtrahieren = 5; // Für eine Erinnerung, die vor 5 Tagen fällig war
const vergangenesDatum = new Date(heute.getTime() - tageZumSubtrahieren * 24 * 60 * 60 * 1000);
console.log(vergangenesDatum.toString()); // Output: das vergangene Datum als String
Deep Dive:
Früher haben Programmierer oft eigene Funktionen zur Datumsberechnung geschrieben. Diese basierten auf den Grundlagen, die bereits im ANSI C Standard definiert waren. Heute bietet JavaScript das eingebaute Date-Objekt, und TypeScript erbt diese Funktionalität. Andere Bibliotheken wie Moment.js
oder date-fns
erweitern diese Fähigkeiten.
Bedenkt man, dass jedes Jahr Schaltsekunden hinzukommen können und Monate unterschiedliche Längen haben, ist das Rechnen mit reinen Millisekunden allerdings nicht immer exakt. Moderne Bibliotheken berücksichtigen solche Faktoren automatisch.
Beim Arbeiten mit Zeitzonen wird es komplizierter. Intl.DateTimeFormat
oder Bibliotheken wie Luxon
helfen hier. TypeScript selbst bietet keine extra Date-Handling-Funktionen, da es auf JavaScript aufbaut.