티스토리 뷰

iOS, Safari(사파리) 자바스크립트 new Date() 크로스브라우징 이슈

특정 시간이 되면 어떤 요소가 사라지도록 처리하는 업무와 타이머를 생성할 필요가 있었는데

iOS와 Safari에서는 제대로 작동하지 않거나 타이머의 숫자가 NaN으로 나타나는 이슈가 있었다.

서핑을 좀 해보니 크로스 브라우징 문제였고, iOS와 safari가 아래와 같은 표기법을 지원하지 않아서였다.

new Date('2021-06-27 18:23:24'); // invalid Data로 확인

구글링 결과 해결법은 크게 두 가지였다.

1. Moment.js 사용하기

https://momentjs.com/

2. 표준표기법 사용하기

위 코드를 아래와 같이 사용하면 된다.

new Date(2021, 5, 27, 18, 23, 24); // 년, 월, 일, 시, 분, 초. 월은 0부터 시작한다.

앞으로 Date 객체를 사용할 때 웬만하면 표준 표기법을 이용하는 게 안전할 것 같다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함