Pandaman Blog

[JS] Javascript의 Date객체 본문

Front end/Javascript

[JS] Javascript의 Date객체

oyg0420 2020. 1. 7. 23:40

Date

Date 생성자는 시간의 특정 지점을 나타내는 Date 객체를 생성합니다. Date 객체는 1970년 1월 1일 UTC(국제표준시) 00:00으로부터 지난 시간을 밀리초로 나타내는 유닉스 타임스탬프를 사용합니다.

Date 객체 사용법

Date 객체는 네가지 형태로 사용될 수 있습니다.

예제를 통해 알아보겠습니다.

// 매개변수 없음
new Date(); // Tue Jan 07 2020 22:47:40 GMT+0900 (한국 표준시)

// 유닉스 타임스탬프
new Date(1040000300000) // Mon Dec 16 2002 09:58:20 GMT+0900 (한국 표준시)

// 시간 구성요소 매개변수 전달
new Date(2020, 0); // Wed Jan 01 2020 00:00:00 GMT+0900 (한국 표준시)
new Date(2020, 1, 20); // Thu Feb 20 2020 00:00:00 GMT+0900 (한국 표준시)

// 타임스탬프 문자열
new Date('July 15 2020'); // Wed Jul 15 2020 00:00:00 GMT+0900 (한국 표준시)

Date객체는 매개변수로 아무것도 넣지 않을 경우 현재지역의 날짜를 반환합니다.
숫자를 넣으면 유닉스 타임스탬프로 해석합니다. 유닉스 타임스탬프는 1970년 1월 1일 00:00:00 UTC(유닉스 시간)부터의 시간을 밀리초 단위로 표현한 정수값을 의미합니다.
시간 구성요소를 매개변수로 전달하는 방법에서는 월은 0부터 시작하고 일은 1부터 시작합니다.
문자열을 넣으면 문자열을 해석하고 그에 맞는 날짜를 반환합니다.

날짜 형식

여러 형채의 날짜형식을 얻을 수 있는 내장 메서드들이 존재합니다.
하지만 Moment.js에서 제공하는 날짜표시방법을 가독성과 쉽게 사용할 수 있는 이유로 선호합니다.

const date = new Date();
date.toLocaleDateString(); // "2020. 1. 7."
date.toTimeString(); // "23:32:47 GMT+0900 (한국 표준시)"
date.toUTCString();    // "Tue, 07 Jan 2020 14:32:47 GMT"

moment(date).format('YYYY-MM-DD'); // "2020-01-07"
moment(date).format('YYYY-MM-DD HH:mm'); // "2020-01-07 23:35"
moment(date).format('YYYY-MM-DD HH:mm [UTC]Z'); // "2020-01-07 23:35 UTC+09:00"

위 예제에서 알 수 있듯이 Date 객체의 닐짜 형식 옵션은 일관성 없는 포맷을 제공하는..것 같습니다. Moment.js를 활용하는것이 원하는 날짜 포멧을 만들기에 쉽고 편리하다는 생각을 하게 되었습니다.

 

파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음

Comments