2015-06-06 22 views
5

Warum es ist, wenn ichErklären javascripts Date() funktioniert

var dt = new Date(2015, 6, 1); 
dt.toUTCString() 

Mein Ausgang Tue, 30 Jun 2015 23:00:00 GMT

Und

var dt = new Date(2015, 6, 2); 
dt.toUTCString() 

Wed, 01 Jul 2015 23:00:00 GMT

haben, die ich hier klar etwas fehlt bin Ich möchte in der Lage sein, jeden Tag des Monats und g et al Date() für diesen Tag

Ich verstehe nicht, warum, wenn der Tag 1 ist, heißt es, das Datum ist der 30.

+0

Dies ist eine gute Frage, klar, nützlich und in der Tat interessant. – bjfletcher

Antwort

3

Javascript Termine sind immer mit der lokalen Zeitzone erzeugt. Mit toUTCString wird die Zeit im Date-Objekt in UTC-Zeit konvertiert, und in Ihrem Fall bedeutet das -1 Stunden. Wenn Sie ein Date-Objekt mit UTC-Zeit initialisieren möchten, verwenden Sie:

var dt = new Date(Date.UTC(2015, 6, 1)); 
+0

Ich denke, ich bin nur dumm. Ich dachte, dass toUTCString() die einzige Funktion war, um das lesbare Datum zu sehen, erkannte gerade, dass es ein toDateString() gibt und das richtige Datum hervorbringt – Ben

0

Die toUTCString() -Methode konvertiert ein Date-Objekt in eine Zeichenfolge, nach Weltzeit zurück.

Die koordinierte Weltzeit (UTC) ist die vom Weltzeitstandard festgelegte Zeit.

Hinweis: Die UTC-Zeit entspricht der GMT-Zeit.

0

Versuchen Sie, dt.toUTCString() in einer anderen Funktion zu ändern. Es gibt eine Menge Stunde auf dem Planeten, zum Beispiel in Amerika ist die 5 Uhr, in Japan ist 10 Uhr usw. Die UTC ist eine Zeitzone, versuchen Sie dies zu ändern.

Verwandte Themen