문자열 + 형식
입력 문자열의 형식을 알고 있다면 해당 형식을 사용하여 날짜를 파싱할 수 있습니다.
TIP
이 기능을 사용하려면 CustomParseFormat 플러그인이 필요합니다.
js
dayjs.extend(customParseFormat);
dayjs('12-25-1995', 'MM-DD-YYYY');
로케일 키를 세 번째 매개변수로 전달하여 로케일을 지정하여 날짜/시간 문자열을 파싱할 수 있습니다.
js
require('dayjs/locale/es');
dayjs('2018 Enero 15', 'YYYY MMMM DD', 'es');
엄격한 파싱을 사용하려면 마지막 인수로 부울 값을 지정하십시오. 엄격한 파싱은 형식과 입력 문자열이 구분 기호를 포함하여 정확히 일치해야 합니다.
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
입력 문자열의 정확한 형식을 모르는 경우, 여러 형식 중 하나일 수 있다면 형식 배열을 사용할 수 있습니다.
js
dayjs('12-25-2001', ['YYYY', 'YYYY-MM-DD'], 'es', true);
사용 가능한 파싱 토큰 목록
입력 | 예시 | 설명 |
---|---|---|
YY | 01 | 두 자리 연도 |
YYYY | 2001 | 네 자리 연도 |
M | 1-12 | 월 (1부터 시작) |
MM | 01-12 | 월 (2자리) |
MMM | Jan-Dec | 축약된 월 이름 |
MMMM | January-December | 전체 월 이름 |
D | 1-31 | 일 |
DD | 01-31 | 일 (2자리) |
H | 0-23 | 시간 (24시간제) |
HH | 00-23 | 시간 (24시간제, 2자리) |
h | 1-12 | 시간 (12시간제) |
hh | 01-12 | 시간 (12시간제, 2자리) |
m | 0-59 | 분 |
mm | 00-59 | 분 (2자리) |
s | 0-59 | 초 |
ss | 00-59 | 초 (2자리) |
S | 0-9 | 1/10초 (1자리) |
SS | 00-99 | 1/100초 (2자리) |
SSS | 000-999 | 밀리초 (3자리) |
Z | -05:00 | UTC로부터의 시간대 오프셋 |
ZZ | -0500 | UTC로부터의 압축된 시간대 오프셋 (2자리) |
A | AM PM | 오전/오후 (대문자) |
a | am pm | 오전/오후 (소문자) |
Do | 1st... 31st | 서수가 있는 일 |
X | 1410715640.579 | Unix 타임스탬프 (초) |
x | 1410715640579 | Unix 타임스탬프 (밀리초) |
moment와의 차이점
제목 | 매개변수 | dayjs | moment |
---|---|---|---|
오버플로 발생 시 잘못된 날짜 | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss') | '08-11-2011 04:29:17' | 'Invalid date' |
오버플로 발생 시 잘못된 날짜 (엄격 모드) | ('35/22/2010 99:88:77', 'DD-MM-YYYY HH:mm:ss', true) | 'Invalid Date' | 'Invalid date' |
'0'인 일 또는 월 (기본값 사용 시) | ('1970-00-00', 'YYYY-MM-DD') | '1970-01-01' | 'Invalid date' |
'0'인 일 또는 월 (기본값 사용 시, 엄격 모드) | ('1970-00-00', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
형식에 맞지 않는 날짜 | ('10/12/2014', 'YYYY-MM-DD') | '01-01-2014' | '12-20-2010' |
형식에 맞지 않는 날짜 (엄격 모드) | ('10/12/2014', 'YYYY-MM-DD', true) | 'Invalid Date' | 'Invalid date' |
최초 일치 vs. 최장 일치 | ('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' |
최초 일치 vs. 최장 일치 (엄격 모드) | ('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' |
인식되는 구분 기호 문자 목록:
-_:.,()/