Safari 브라우저 Date 객체 주의할점

jw·2020년 11월 4일

javascript에서 Date 객체를 사용해서 프로젝트를 진행했다.
Date 객체끼리 크기 비교 연산을 통해서 시점을 구분했었는데 Safari 브라우저에서만 이상하게 작동하는 것을 확인했다.

분명 Chrome 에서는 잘 동작했고 사용한 소스에 대해 브라우저 호환성 문제도 없었어서 이유를 찾기 힘들었다.

💡 Date 객체를 String으로 선언할 때 주의할 점

// 기존 코드
const date = new Date('2020-11-4');
const date2 = new Date('2021-1-4');

기존 코드에서 Date 생성은 위 처럼 했었는데
Safari 브라우저에서 Date 객체는 'yyyy-mm-dd' 형식만 지원하기 때문에
아래 처럼 수정해서 해결했다

// 수정 코드
const date = new Date(`2021-${getTwoDigit(month)}-${getTwoDigit(day)}`);

function getTwoDigit(num) {
  return ("0" + num).slice(-2);
}
profile
개발 공부중입니다!

0개의 댓글