TT-MM-JJJJ-Zeichenfolge in Datum konvertieren
Konvertieren Sie in JavaScript eine Zeichenfolge im TT-MM-JJJJ-Format in ein Datumsobjekt ist unkompliziert, es müssen jedoch bestimmte Überlegungen beachtet werden.
Problem mit der direkten Konvertierung
Bei der Verwendung von new Date(string) mit einer dd-mm-yyyy-Zeichenfolge kann es sein, dass dies der Fall ist Es wird ein Fehler „Ungültiges Datum“ angezeigt. Dies liegt daran, dass das Symbol „-“ nicht als Datumstrennzeichen erkannt wird.
Lösungen
1. Auf „-“ aufteilen:
Teilen Sie die Zeichenfolge in ihre Bestandteile auf und erstellen Sie manuell das Datumsobjekt:
var from = $("#datepicker").val().split("-") var f = new Date(from[2], from[1] - 1, from[0])
2. Verwenden Sie reguläre Ausdrücke:
Verwenden Sie einen regulären Ausdruck, um die Datumskomponenten zu extrahieren:
var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "//"))
3. Erstellen Sie eine wiederverwendbare Funktion:
Der Einfachheit halber packen Sie die Konvertierungslogik in eine wiederverwendbare Funktion ein:
function toDate(dateStr) { var parts = dateStr.split("-") return new Date(parts[2], parts[1] - 1, parts[0]) }
4. Modernes JavaScript:
Wenn Sie Zugriff auf moderne JavaScript-Funktionen haben, nutzen Sie die Array-Destrukturierung:
const toDate = (dateStr) => { const [day, month, year] = dateStr.split("-") return new Date(year, month - 1, day) }
Das obige ist der detaillierte Inhalt vonWie konvertiert man TT-MM-JJJJ-Strings zuverlässig in JavaScript-Datumsobjekte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!