Wie kann ich in JavaScript eine Zeichenkette in ein Datumsobjekt umwandeln?
var st = "date in some format"
var dt = new Date();
var dt_st = // st in Date format, same as dt.
Wie kann ich in JavaScript eine Zeichenkette in ein Datumsobjekt umwandeln?
var st = "date in some format"
var dt = new Date();
var dt_st = // st in Date format, same as dt.
Wenn Sie die großartige luxon Bibliothek können Sie Ihr Datum leicht analysieren, indem Sie z. B.
var luxonDate = DateTime.fromISO("2014-09-15T09:00:00");
und kann auf das JS-Datumsobjekt über
luxonDate().toJSDate();
Die alte Antwort lautete MomentJS
var momentDate = moment("2014-09-15 09:00:00");
momentDate ().toDate();
Einfach new Date(st);
In der Annahme, dass es sich um die richtiges Format .
Für alle, die nach einer kleinen und intelligenten Lösung suchen:
String.prototype.toDate = function(format)
{
var normalized = this.replace(/[^a-zA-Z0-9]/g, '-');
var normalizedFormat= format.toLowerCase().replace(/[^a-zA-Z0-9]/g, '-');
var formatItems = normalizedFormat.split('-');
var dateItems = normalized.split('-');
var monthIndex = formatItems.indexOf("mm");
var dayIndex = formatItems.indexOf("dd");
var yearIndex = formatItems.indexOf("yyyy");
var hourIndex = formatItems.indexOf("hh");
var minutesIndex = formatItems.indexOf("ii");
var secondsIndex = formatItems.indexOf("ss");
var today = new Date();
var year = yearIndex>-1 ? dateItems[yearIndex] : today.getFullYear();
var month = monthIndex>-1 ? dateItems[monthIndex]-1 : today.getMonth()-1;
var day = dayIndex>-1 ? dateItems[dayIndex] : today.getDate();
var hour = hourIndex>-1 ? dateItems[hourIndex] : today.getHours();
var minute = minutesIndex>-1 ? dateItems[minutesIndex] : today.getMinutes();
var second = secondsIndex>-1 ? dateItems[secondsIndex] : today.getSeconds();
return new Date(year,month,day,hour,minute,second);
};
Ejemplo:
"22/03/2016 14:03:01".toDate("dd/mm/yyyy hh:ii:ss");
"2016-03-29 18:30:00".toDate("yyyy-mm-dd hh:ii:ss");
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.