티스토리 뷰
아이패드와 몇몇 아이폰 기종에서 Date가 안나오고 NaN이라고 뜨는 이슈가 들어왔다.
자바스크립트에서 흔히 사용하는 Date 객체에 String 타입의 날짜를 담아 사용할 때,
ex : new Date('2021-08-08');
사파리에서는 Invalid Date error를 내뱉는다.
해당 이슈를 해결하기 위해 moment.js 날짜 라이브러리를 사용했다.
moment.js를 사용하면 모든 기종 및 사파리에서도 사용 가능하다.
date 객체를 생성할 때
new Date(); 를 사용한다면
moment.js 에서는 moment();, moment(new Date());
를 사용하여 현재 날짜를 가져올 수 있다
[ 날짜 format ]
var date = '2021-08-22 03:11:22'; // 특정 시간으로 설정
moment(date).format("YYYY-MM-DD HH:mm:ss"); // 2021-08-22 03:11:22
moment(date).format("YYYY"); // 2021
moment(date).format("MM"); // 08
[ 날짜 더하기, 빼기]
var moveDate = 7;
moment(new Date(), 'YYYY-MM-DD HH:mm:ss').add(moveDate, 'days').toDate();
// 현재 날짜에서 +7일
moment(new Date(), 'YYYY-MM-DD HH:mm:ss').subtract(moveDate, 'days').toDate();
//현재 날짜에서 -7일
* moveDate가 음수일 경우 add를 사용해도 상관없다.
Date 객체에서는 8월이면 08로 넘어오지 않아서 앞에 자릿수 맞추느라 0을 붙혀줬었는데 moment에서는 따로 안 붙혀줘도 된다.
나머지 자세한 사항은 document에서..
https://momentjs.com/docs/#/query/
'Development > Error' 카테고리의 다른 글
- Total
- Today
- Yesterday