ASP.NET MVC JsonResult-Datumsformat
Bei der Rückgabe eines JsonResult in ASP.NET MVC kann es zu einem Problem mit Datumseigenschaften kommen serialisiert in einem Format wie „/Datum(1239018869048)/“. Dieses Format ist für JavaScript nicht lesbar und kann Probleme beim Umgang mit Datumsangaben in Ihrer Anwendung verursachen.
Lösung 1: Datumszeichenfolge manuell in JavaScript analysieren
Ein Ansatz ist das Parsen Erstellen Sie die Datumszeichenfolge manuell in JavaScript mit dem folgenden Code:
value = new Date(parseInt(value.replace("/Date(", "").replace(")/",""), 10));
Dieser Code entfernt die Zeichen „Datum(“ und „)“ aus der Zeichenfolge und konvertiert es in ein Date-Objekt.
Lösung 2: Verwenden Sie JSON.parse() mit einer Reviver-Funktion
Eine andere Option ist die Verwendung von JSON.parse() Funktion mit einer Reviver-Funktion, die die Datumszeichenfolge in ein Date-Objekt konvertiert. Zum Beispiel:
var parsed = JSON.parse(data, function(key, value) { if (typeof value === 'string') { var d = /\/Date\((\d*)\)\//.exec(value); return (d) ? new Date(+d[1]) : value; } return value; });
In diesem Code prüft die Reviver-Funktion, ob der Wert eine Zeichenfolge ist und mit dem Muster „/Date((d*))/“ übereinstimmt. Wenn dies der Fall ist, wird der Wert mithilfe des Date-Konstruktors in ein Date-Objekt konvertiert. Andernfalls wird der ursprüngliche Wert zurückgegeben.
Zusätzliche Überlegungen
Es ist wichtig zu beachten, dass die JSON-Spezifikation kein Standarddatumsformat definiert. Das von ASP.NET MVC verwendete Format „/Date(ticks)/“ ist eine Konvention, die es JSON ermöglicht, ein Date-Objekt darzustellen.
Beim Umgang mit Datumsangaben in JavaScript sollten Sie Folgendes berücksichtigen:
Das obige ist der detaillierte Inhalt vonWie gehe ich mit dem nicht standardmäßigen Datumsformat von ASP.NET MVC JsonResult in JavaScript um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!