항해99/챕터3 주특기 Node.js
항해 23일) Node.js- new Date 날짜 포맷 (YYYY-MM-DD hh:mm:ss)
뽀짝코딩
2022. 2. 1. 21:56
728x90
다양한 방법으로 date format을 할 수 있습니다.
첫 번째 코드 (YYYY-MM-DD hh:mm:ss)
new Date(+new Date() + 3240 * 10000).toISOString().replace("T", " ").replace(/\..*/, '');
// 2021-08-05 09:51:31
해당 코드는 3240 * 10000 이란 수식만 기억하면 쉽게 사용할 수 있는 코드입니다.
"YYYY-MM-DDTHH:mm:ss.sssZ"로 나오는 형식을 정규식을 사용하여 제거해준 코드입니다.
수식을 사용하는 이유는 대한민국 서울 시간에 맞추기 위함입니다. (기존 시간은 UTC 기준)
두 번째 코드 (YYYY-MM-DD)
new Date(+new Date() + 3240 * 10000).toISOString().split("T")[0];
// 2021-08-05
해당 코드는 오늘의 날짜 포맷 값을 구하는 코드입니다.
"YYYY-MM-DDTHH:mm:ss.sssZ"의 형식에서 T를 기준으로 잘라 날짜만 가져옵니다.
세 번째 코드 (hh:mm:ss)
new Date().toTimeString().split(" ")[0];
// 09:51:35
해당 코드는 현재 시간 포맷 값을 구하는 코드입니다.
"09:51:35 GMT+0900 (한국 표준시)"의 형식에서 공백을 기준으로 잘라 시간만 가져옵니다.
응용 (YYYY-MM-DD hh:mm:ss)
const date = new Date(+new Date() + 3240 * 10000).toISOString().split("T")[0]
const time = new Date().toTimeString().split(" ")[0];
console.log(date + ' ' + time);
// 2021-08-05 09:51:31
두 번째 코드와 세 번째 코드를 합쳐 주면 YYYY-MM-DD hh:mm:ss 형식의 날짜와 시간을 얻을 수 있습니다.
첫 번째 방식과 또 다른 방법입니다.
다섯 번째 코드 (YYYY MM DD)
new Date().toLocaleDateString().replace(/\./g, "");
// 2021 08 05
해당 코드는 toLocaleDateString 메서드를 사용한 것으로 정규식으로 '2021. 08. 5.' 형식의 부분에 "." 을 제거시킨 코드입니다.
참고
*날짜포맷
반응형