우당탕탕 개발일지

[Javascript] dayjs 를 이용하여 문자열을 Date로 파싱하기 본문

Client

[Javascript] dayjs 를 이용하여 문자열을 Date로 파싱하기

devchop 2024. 12. 27. 15:15

 

날짜를 표기하는 여러 포맷들이 있다.

YYYY-MM-DD 나, YYYY년 MM월 DD일  등등.. 이런 다양한 날짜 포맷을 Date 형식으로 변환하는 작업이 필요했다. 이때 알게 된 것이 dayjs이다.

 

프로젝트에 dayjs를 설치한다.

npm install dayjs

 

커스텀 날짜 포맷을 적용하여 Date로 변환하기 

import dayjs from 'dayjs';

dayjs.extend(customParseFormat); //여러가지 커스텀 포맷을 지원하기 위해 확장

//변환포맷을 커스텀으로 여러개 설정해놓는다.
date_formats = [
    'YYYY년MM월DD일',
    'YYYY년M월D일',
    'YYYY/MM/DD',
    'YYYY-MM-DD',
    'YYYY.MM.DD hh:mm:ss',
    'YYYY.MM.DD',
  ];

 parseStrToDate(input: string): Date {
    for (const format of date_formats) {
      const date = dayjs(input, format);
      if (date.isValid()) {
        return date.toDate();
      }
    }

    console.log(`Invalid date format: ${input}`);
    return new Date();
  }