String + Format
Wenn Sie das Format einer Eingabezeichenkette kennen, können Sie dieses verwenden, um ein Datum zu parsen.
TIP
Dies erfordert das Plugin CustomParseFormat.
dayjs.extend(customParseFormat);
dayjs('12-25-1995', 'MM-DD-YYYY');
Übergeben Sie den Locale-Schlüssel als dritten Parameter, um eine Locale-spezifische Datums- und Zeitangabe zu parsen.
require('dayjs/locale/es');
dayjs('2018 Enero 15', 'YYYY MMMM DD', 'es');
Sie können einen Boolean-Wert als letztes Argument angeben, um eine strikte Formatprüfung zu aktivieren. Bei strikter Formatprüfung müssen Format und Eingabe exakt übereinstimmen, einschließlich der Trennzeichen.
dayjs('1970-00-00', 'YYYY-MM-DD').isValid(); // true
dayjs('1970-00-00', 'YYYY-MM-DD', true).isValid(); // false
dayjs('1970-00-00', 'YYYY-MM-DD', 'es', true).isValid(); // false
Wenn Sie das genaue Format einer Eingabezeichenkette nicht kennen, aber wissen, dass es eines von mehreren sein könnte, können Sie ein Array von Formaten verwenden.
dayjs('12-25-2001', ['YYYY', 'YYYY-MM-DD'], 'es', true);
Liste aller verfügbaren Parsing-Token
Input | Example | Beschreibung |
---|---|---|
YY | 01 | Zweistelliges Jahr |
YYYY | 2001 | Vierstelliges Jahr |
M | 1-12 | Monat, beginnend mit 1 |
MM | 01-12 | Monat, zweistellig |
MMM | Jan-Dez | Abgekürzte Monatsnamen |
MMMM | Januar-Dezember | Vollständiger Monatsname |
D | 1-31 | Tag des Monats |
DD | 01-31 | Tag des Monats, zweistellig |
H | 0-23 | Stunde (24-Stunden-Format) |
HH | 00-23 | Stunde (24-Stunden-Format), zweistellig |
h | 1-12 | Stunde (12-Stunden-Format) |
hh | 01-12 | Stunde (12-Stunden-Format), zweistellig |
m | 0-59 | Minute |
mm | 00-59 | Minute, zweistellig |
s | 0-59 | Sekunde |
ss | 00-59 | Sekunde, zweistellig |
S | 0-9 | Hunderter Millisekunden, 1 Stelle |
SS | 00-99 | Zehner Millisekunden, 2 Stellen |
SSS | 000-999 | Millisekunden, 3 Stellen |
Z | -05:00 | Offset von UTC |
ZZ | -0500 | Kompakter Offset von UTC, 2 Stellen |
A | AM PM | Post meridiem oder ante meridiem, Großbuchstaben |
a | am pm | Post meridiem oder ante meridiem, Kleinbuchstaben |
Do | 1st... 31st | Tag des Monats mit Ordnungszahl |
X | 1410715640.579 | Unix-Timestamp (Sekunden) |
x | 1410715640579 | Unix-Timestamp (Millisekunden) |
Unterschiede zu Moment
title | parameters | dayjs | moment |
---|---|---|---|
Ungültiges Datum durch Überlauf | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss') | '08-11-2011 04:29:17' | 'Invalid date' |
Ungültiges Datum mit Überlauf, strikt | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss', true) | 'Invalid Date' | 'Invalid date' |
"0"-ter Tag oder Monat (mit Standardwerten) | ('1970-00-00', 'YYYY-MM-DD') | '1970-01-01' | 'Invalid date' |
"0"-ter Tag oder Monat (mit Standardwerten), strikt | ('1970-00-00', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
Datum stimmt nicht mit dem Format überein | ('10/12/2014', 'YYYY-MM-DD') | '01-01-2014' | '12-20-2010' |
Datum stimmt nicht mit dem Format überein, strikt | ('10/12/2014', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
Erste Übereinstimmung vs. längste Übereinstimmung | ('2012-05-28 10:21:15', ['YYYY', 'YYYY-MM-DD', 'YYYY-MM-DD HH:mm:ss']) | '2012-01-01 00:00:00' | '2012-05-28 10:21:15' |
Erste Übereinstimmung vs. längste Übereinstimmung, strikt | ('2012-05-28 10:21:15', ['YYYY', 'YYYY-MM-DD', 'YYYY-MM-DD HH:mm:ss'], true) | '2012-05-28 10:21:15' | '2012-05-28 10:21:15' |
Liste aller erkannten Trennzeichen:
-_:.,()/