2016-06-27 9 views
0

Ich habe eine JSON so ...Wie konvertiert man JSON (OData) Zeit in etwas wie gg-mm-aaaa in Javascript?

{ 
"d": { 
    "__count": "5798", 
    "results": [{ 
     "time": "\/Date(1467039720000+0120)\/", 
     "internalId": "5771271b84aed43d477c901b", 
     "datasetVersion": 3, 
     "idDataset": "1214", 
    }, { 
     "time": "\/Date(1467036120000+0120)\/", 
     "internalId": "577118c784aed43d477bdf90", 
     "datasetVersion": 3, 
     "idDataset": "1215", 
..... 

und ich mag die Zeit in einem Format wie gg-mm-aaaa mit Hilfe von JavaScript (oder PHP, wenn nötig ...) extrahieren und konvertieren .

Beachten Sie, dass ich weiß, dass "+120" Minuten sind ... so 2 Stunden.

Gibt es eine JavaScript-Bibliothek oder ein Codebeispiel, um diese Umwandlung durchzuführen?

+3

moment.js erledigt genau das, was Sie benötigen (http://momentjs.com/docs/#/parsing/asp-net-json-date/) und alle möglichen anderen Aufgaben im Zusammenhang mit der JS-Datumsverarbeitung. – Tomalak

Antwort

1

Try This

function FormatDate(value) { 
    var pattern = /Date\(([^)]+)\)/; 
    var results = pattern.exec(value); 
    var dt = new Date(parseFloat(results[1])); 
    console.log(dt); 
    console.log(dt.getMonth()); 
    console.log((dt.getMonth() + 1) + "/" + dt.getDate() + "/" + dt.getFullYear()); 
} 

Zum Beispiel

FormatDate("/Date(1467039720000+0120)/"); 

Ausgang:

Mon Jun 27 2016 11:02:00 GMT-0400 (US Eastern Daylight Time) 
VM64:50 5 
VM64:51 6/27/2016 

Hier ist die Geige Link:

https://jsfiddle.net/jkqm4ej3/

2

Moment JS ist eine sehr gute Bibliothek für den Umgang mit Zeit/Datum. Sie müssen wahrscheinlich den String-Wert in Ihrem JSON analysieren, um ihn zu einem Zeitpunkt zu senden. http://momentjs.com/