Heim > Artikel > Web-Frontend > Wie konvertiere ich „TT-MM-JJJJ'-Strings in JavaScript-Datumsobjekte?
Konvertieren von TT-MM-JJJJ-Zeichenfolgen in Datumsobjekte in JavaScript
Die vorliegende Aufgabe besteht darin, eine Zeichenfolge im Format „TT -mm-yyyy“ mithilfe von JavaScript in ein Date-Objekt umwandeln. Die Funktion „new Date(string)“ schlägt beim Versuch dieser Konvertierung aufgrund des Vorhandenseins des Symbols „-“ fehl. Um diese Herausforderung zu meistern, stehen mehrere Lösungen zur Verfügung.
1. Aufteilen nach „-“
Ein Ansatz besteht darin, die Zeichenfolge in ihre drei Komponenten aufzuteilen: Tag, Monat und Jahr. Dies kann mit der Split("-")-Methode erreicht werden:
var from = $("#datepicker").val().split("-"); var f = new Date(from[2], from[1] - 1, from[0]);
2. Reguläre Ausdrücke verwenden
Reguläre Ausdrücke können verwendet werden, um den Tag, den Monat und das Jahr aus der Zeichenfolge zu extrahieren:
var date = new Date("15-05-2018".replace( /(\d{2})-(\d{2})-(\d{4})/, "//"));
3. In eine Funktion umgestalten
Wenn die Konvertierung mehrfach erforderlich ist, empfiehlt es sich, eine wiederverwendbare Funktion zu erstellen:
function toDate(dateStr) { var parts = dateStr.split("-"); return new Date(parts[2], parts[1] - 1, parts[0]); }
Diese Funktion kann wie folgt verwendet werden:
var from = $("#datepicker").val(); var f = toDate(from);
4. Modernes JavaScript (ES6)
In ES6 kann Array-Destrukturierung verwendet werden, um die Komponenten zu extrahieren:
const toDate = (dateStr) => { const [day, month, year] = dateStr.split("-"); return new Date(year, month - 1, day); };
Das obige ist der detaillierte Inhalt vonWie konvertiere ich „TT-MM-JJJJ'-Strings in JavaScript-Datumsobjekte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!