: dayjs는 JavaScript에서 날짜와 시간을 다루기 위한 경량 라이브러리
: Moment.js와 유사한 기능을 제공하지만, 파일 크기가 더 작고 성능이 우수
⇒ Moment.js는 현재 유지보수만 진행, 더 가볍고 우수한 dayjs를 추천
•
날짜 생성
const now = dayjs();
console.log(now); // 현재 날짜와 시간을 출력합니다.
JavaScript
복사
•
날짜 형식화
const formattedDate = dayjs().format('YYYY-MM-DD');
console.log(formattedDate); // "2023-05-22" (현재 날짜의 포맷)
JavaScript
복사
•
날짜 차이
const start = dayjs('2023-01-01');
const end = dayjs('2023-12-31');
const diffInDays = end.diff(start, 'day');
console.log(diffInDays); // 364 (시작일과 종료일 사이의 일 수)
JavaScript
복사
•
날짜 연산
const tomorrow = dayjs().add(1, 'day');
console.log(tomorrow); // 내일의 날짜와 시간
const nextWeek = dayjs().add(1, 'week');
console.log(nextWeek); // 일주일 후의 날짜와 시간
JavaScript
복사
•
오프셋 기능
import dayjs from 'dayjs';
import utcPlugin from 'dayjs/plugin/utc'; // utc 플러그인을 import합니다.
import timezonePlugin from 'dayjs/plugin/timezone'; // timezone 플러그인을 import합니다.
// 플러그인을 사용하도록 등록합니다.
dayjs.extend(utcPlugin);
dayjs.extend(timezonePlugin);
// KST의 오프셋을 설정합니다.
dayjs.tz.setDefault('Asia/Seoul');
// 현재 KST 기준의 날짜와 시간을 생성합니다.
const now = dayjs().utcOffset(9);
console.log(now); // 현재 KST 기준의 날짜와 시간을 출력합니다.
JavaScript
복사
•
특정 타임존 기준 날짜 생성
import * as dayjs from 'dayjs';
import * as utcPlugin from 'dayjs/plugin/utc'; // utc 플러그인을 import합니다.
import * as timezonePlugin from 'dayjs/plugin/timezone'; // timezone 플러그인을 import합니다.
dayjs.extend(utcPlugin);
dayjs.extend(timezonePlugin);
const newYorkTime = dayjs().tz('America/New_York').toDate();
console.log(newYorkTime); // 2023-05-22T05:50:10.159Z
JavaScript
복사