2017-02-13 4 views
-1

Wenn ich drucken diese:Knoten JS neue Datum 1 Stunde Mismatch

const from = new Date(); 
console.log(from); 

ich dieses: 2017-02-13T22:55:01.395Z Durch die Art und Weise es 23.55 ist. Warum gibt es eine einstündige Nichtübereinstimmung?

Wenn ich dies tun:

console.log(from.getHours()) 

ich es richtig (23), die in Ordnung ist. Was ist los?

Antwort

1

Die String Darstellung from in Ihrer Frage gedruckt wird in UTC ausgedrückt, die Sie durch die Hinter Z sagen kann.

ist jedoch from auch in der Lage, den Zeitpunkt auszudrücken es Zeit intern in lokalen darstellt, entsprechend Ihrer Zeitzone: from.toLocaleString()

Ähnlich .getHours() die Zeit-of-day Stunde kehrt in lokal Zeit.

Die Implikation ist, dass Ihre lokale Zeit 1 Stunde vor UTC liegt, wie zB in Westeuropa (während DST nicht in Kraft ist).

Mit anderen Worten: Die Ausgabe, die Sie erhalten, ist wie vorgesehen.

Verwandte Themen