2017-09-20 2 views
-1

Ziemlich direktes Problem, aber ich habe keine Informationen dazu gefunden, nachdem ich mich umgesehen habe.UTC Datum Sekunden in Datum umrechnen

Im Wesentlichen möchte ich eine Reihe von UTC-Daten (z. B. "1505952000") in reguläre Datumszeichenfolgen (z. B. "9/21") umwandeln, um heute als Beispiel zu verwenden.

Aus irgendeinem Grund jedoch .toDateString() ist als "keine Funktion" aus, wenn ich versuche, es auszuführen. Wie kann ich diese einfache Konvertierung durchführen?

Hier ist mein Code, und ich habe konsolen angemeldet day.dt, um sicherzustellen, dass es eine gültige UTC-Datum ist, wenn es läuft:

let dt = day.dt.toDateString(); 
+2

Versuchen Sie gerade 'new Date (1505952000 * 1000)' und formatieren Sie das Datum, wie Sie wollen? – adeneo

+0

'day.dt' ist wahrscheinlich kein' Date'-Objekt. – Amy

+1

Woah. 1) das war schnell 2) das hat funktioniert 3) Warum wird diese Zahl mit 1000 multipliziert und in einen Date-Konstruktor übergeben, um es zu konvertieren? Danke für Ihre Hilfe – yoursweater

Antwort

1

UTC var in Sekunden ab 1. Jan. 1970 gespeichert . diese Schnipsel

So ist es zurück in die lokale Datum Zeit zu konvertieren, verwenden:

var d = new Date(0); 
 
d.setUTCSeconds(1505952000); 
 

 
console.log(d);

OR

var d = new Date(1505952000 * 1000); // Because this constructor takes miliseconds. 
 

 
console.log(d);