Řetězec + Formát
Pokud znáte formát vstupního řetězce, můžete jej použít k parsování data.
TIP
Pro správnou funkčnost je vyžadován plugin CustomParseFormat.
js
dayjs.extend(customParseFormat);
dayjs('12-25-1995', 'MM-DD-YYYY');
Pro parsování lokalizovaného řetězce data a času zadejte kód lokality jako třetí parametr.
js
require('dayjs/locale/es');
dayjs('2018 Enero 15', 'YYYY MMMM DD', 'es');
Jako poslední argument můžete zadat booleanovskou hodnotu pro použití striktního parsování. Striktní parsování vyžaduje přesnou shodu formátu a vstupu, včetně oddělovačů.
js
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
Pokud neznáte přesný formát vstupního řetězce, ale víte, že by mohl odpovídat jednomu z několika formátů, můžete použít pole formátů.
js
dayjs('12-25-2001', ['YYYY', 'YYYY-MM-DD'], 'es', true);
Seznam všech dostupných tokenů pro parsování
Vstup | Příklad | Popis |
---|---|---|
YY | 01 | Dvouciferný rok |
YYYY | 2001 | Čtyřciferný rok |
M | 1-12 | Měsíc, od 1 do 12 |
MM | 01-12 | Měsíc, dvouciferně |
MMM | Jan-Dec | Zkrácený název měsíce |
MMMM | January-December | Celý název měsíce |
D | 1-31 | Den v měsíci |
DD | 01-31 | Den v měsíci, dvouciferně |
H | 0-23 | Hodiny (24hodinový formát) |
HH | 00-23 | Hodiny (24hodinový formát), dvouciferně |
h | 1-12 | Hodiny (12hodinový formát) |
hh | 01-12 | Hodiny (12hodinový formát), dvouciferně |
m | 0-59 | Minuty |
mm | 00-59 | Minuty, dvouciferně |
s | 0-59 | Sekundy |
ss | 00-59 | Sekundy, dvouciferně |
S | 0-9 | Stovky milisekund, jednociferně |
SS | 00-99 | Desítky milisekund, dvouciferně |
SSS | 000-999 | Milisekundy, trojciferně |
Z | -05:00 | Časový posun od UTC |
ZZ | -0500 | Kompaktní časový posun od UTC (bez '😂 |
A | AM PM | AM nebo PM, velkými písmeny |
a | am pm | am nebo pm, malými písmeny |
Do | 1st... 31st | Den v měsíci s anglickou řadovou číslovkou |
X | 1410715640.579 | Unixový timestamp (sekundy) |
x | 1410715640579 | Unixový timestamp (milisekundy) |
Rozdíly oproti Moment.js
Název | Parametry | dayjs | moment |
---|---|---|---|
Neplatné datum s přebytkem | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss') | '08-11-2011 04:29:17' | 'Invalid date' |
Neplatné datum s přebytkem, striktní | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss', true) | 'Invalid Date' | 'Invalid date' |
Den nebo měsíc '0' (s použitím výchozích hodnot) | ('1970-00-00', 'YYYY-MM-DD') | '1970-01-01' | 'Invalid date' |
Den nebo měsíc '0' (s použitím výchozích hodnot), striktní | ('1970-00-00', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
Datum nesplňuje formát | ('10/12/2014', 'YYYY-MM-DD') | '01-01-2014' | '12-20-2010' |
Datum nesplňuje formát, striktní | ('10/12/2014', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
První shoda vs. nejdelší možná shoda | ('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' |
První shoda vs. nejdelší možná shoda, striktní | ('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' |
Seznam všech rozpoznávaných oddělovačů:
-_:.,()/