Ich habe eine Reihe von .net webApi-Aktionen, die in JSON deserialisierte Daten zurückgeben. Meine eckige Anwendung verwendet dann diese Datumszeichenfolgen für die Anzeige \ edit oder als ngModel in einer Vielzahl von date-Anweisungen. Viele dieser Direktiven erfordern ein JavaScript-Datumsobjekt und keine Zeichenfolgedarstellung eines Datums. Wie wird die Datumszeichenfolge für alle zurückgegebenen Webapi-Daten in das JavaScript-Datum serialisiert?Wie konvertiere ich von webapi zurückgegebene Daten im string-Format in das Javascript-Datumsformat für AngularJs
N.B. Ich habe eine Vielzahl von RegExs ausprobiert, die dem ISO-8601-Standard entsprechen, aber für jeden, den ich verwende, gibt es eine Reihe von Anwendungsfällen, die fehlschlagen. Die Fälle, die ich benötige, sind wie folgt:
- sollte keine Daten (string) z. 'http://blah/'
- sollte nicht Daten (Ganzzahl) z. 2015
- sollte schlechte Daten nicht konvertieren, z. '2009-05-19T14a39r'
- sollte nicht teilweise falsches Datum von Zeichenfolge in Datum z. '1'
- sollte keine Zeichenfolge konvertieren, die wie ein Jahr aussieht, z. '2015'
- sollte Datum von Zeichenfolge in Datum z. "2015-09-09"
- sollte Datum mit der Zeit von Zeichenfolge zu Datum mit der Zeit konvertieren, z. '2009-05-19T14: 39'
sollte Datum mit der Zeit von Zeichenfolge zu Datum mit Uhrzeit einschließlich Sekunden konvertieren, z. '2009-05-19T14: 39: 23'
sollte das Datum mit der Zeit in die Millisekunde von String zu Datum mit der Zeit mit Millisekunden, z. '2016-06-09T13: 02: 39.957'
sollte Datum mit der Zeit von Zeichenfolge zu Datum mit der Zeit in UTC konvertieren, z. '2009-05-19T14: 39Z'
sollte kein Datum konvertieren, das Teil einer längeren Zeichenfolge ist, z. ‚Sollte nicht konvertieren 2015-12-12T00: 00: 00Z, da dies Teil einer längeren Zeichenkette‘