Weirdo Date-Objekt in JS
In den meisten Fällen müssen wir uns nicht bis ins Detail mit dem Javascript-Datumsobjekt befassen, aber manchmal kann dies zu einem unscharfen Fehler in Ihrem Code führen. Werfen wir einen Blick auf das Problem.
Was ist also ein JavaScript-Datumsobjekt?
Ein JavaScript-Datumsobjekt ist die Anzahl der Millisekunden, die seit Mitternacht des 1. Januar 1970 um 00:00:00 UTC vergangen sind.
Das Problem
console.log(new Date("2023-01-24"));
console.log(new Date("2023-01-24 "));
Waaaa? Javascript ist furchtbar inkonsistent.
Das Hinzufügen von nur Leerzeichen am Ende der Zeichenfolge führt zum korrekten Ergebnis .
Noch ein seltsames
console.log(new Date("2023/01/24"));
Wenn wir jedoch das Zeichenfolgenformat in Monat-Tag-Jahr umstellen
console.log(new Date("01-24-2023"));
Jetzt stimmt das Ergebnis ✔.
Also, was ist das Problem?
Das Problem betrifft speziell die Zeitzone. Beachten Sie den Teil GMT-0500– das ist 5 Stunden hinter GMT. Wenn ich zum angezeigten Datum/Uhrzeit 5 Stunden addiere, erhalte ich genau Mitternacht 24.01.2023.
Im Moment brauchen wir keinen Zeitteil, also behalten Sie den Rest der Diskussion für das nächste Mal.
Wegbringen
Dieser Artikel behandelt nicht alle Details, aber ich bin mir sicher, dass Sie in Zukunft das Datumsobjekt sorgfältig erstellen werden. Seien Sie vorsichtig, wenn Sie Date Time-Bibliotheken von Drittanbietern wie Moment Js, Day Js usw. verwenden.
Es ist auch möglich, dass einige Berechnungen oder Manipulationen, die mit dem Datumsobjekt durchgeführt werden, bei falscher Ausführung zu einem falschen Datum führen. Beispielsweise verhält sich das Datumsobjekt in verschiedenen Browsern unterschiedlich. Daher ist es wichtig, die Datumsberechnungen noch einmal zu überprüfen und sicherzustellen, dass das Datumsobjekt initialisiert und korrekt verwendet wird.
Sie können mich unterstützen, indem Sie
Klatschen
Kommentieren
Teile diesen Beitrag mit deinen Freunden

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































