해당 포스팅은 위키북스의 모던 자바스크립트 Deep Dive라는 책을 독학하며 기록하는 글입니다.

표준 빌트인 객체인 Date는 날짜와 시간을 위한 메서드를 제공하는 빌트인 객체이면서 생성자 함수이다.

UTC는 협정 세계시를 뜻하며 국제 표준시라고도 한다. 또한 GMT라고 불리기도 하는데 이는 초의 소수점 단위에서만 차기가 나기 때문이다.

KST는 한국 표준시로 UTC에 9시간을 더한 시간이다. 즉 KST는 UTC보다 9시간이 빠르다.

Date 객체 생성

Date객체를 생성하는 방법은 4가지로 다음과 같다.

  1. new Date()
    함수를 호출한 시점의 날짜와 시간을 가지는 Date객체가 만들어진다.

  2. new Date(milliseconds)
    1970년 1월 1일 00시 00분 00초(UTC)에서 인수로 전달된 밀리초만큼 지난 시간의 Date객체가 만들어진다.

  3. new Date(dateString)
    날짜와 시간을 나타내는 문자열을 인수로 받으면 해당 날짜와 시간에 해당하는 Date객체가 만들어지며, dateString은 Date.parse메서드에 의해 해석 가증한 형식이여야 한다.

// 월(영어) 일, 년 시:분:초 기준
new Date('May 26, 2022, 01:00:00 UTC');

// 월(영어) 일, 년 시:분:초
new Date('May 26, 2022, 01:00:00');

// 년/월/일/시:분:초
new Date('2022/01/01/01:00:00');
  1. new Date(년, 월[, 일, 시, 분, 초, 밀리초])
    년도와 월만을 인수로 전달하면(년과 월은 필수적, 나머지는 선택적) 해당 날짜와 시간에 해당하는 Date객체가 만들어진다. 전달되지 않은 항목은 0이나 1로 초기화횐다.

Date객체에서 월에 해당하는 month는 우리가 알고 있는 1~12가 아니라 0~11로 표현되는 것에 주의해야 한다. 또한 요일도 일요일~토요일에 해당하는 수가 1~7로 표현되는 것이 아니라 0~6으로 표현된다. 그 외의 항목들은 모두 0부터 시작한다.

Data 메서드

  1. Date.now
    1970년 1월 1일 00:00:00(UTC)을 기점으로 현재까지 경과한 밀리초를 반환한다.

  2. Date.parse(인수)
    날짜와 시간을 나타내는 문자열을 인수로 전달받아 1970년 1월 1일 00:00:00(UTC)부터 해당 날짜와 시간까지 흐른 밀리초를 반환한다.

  3. Date.UTC(년, 월[, 일, 시, 분, 초, 밀리초])
    1970년 1월 1일 00:00:00(UTC)부터 인수로 전달받은 날짜와 시간까지 흐른 밀리초를 반환하는데 이때 전달되는 인수를 로컬타임이 아닌 UTC로 인식한다.

  4. Date객체.getFullYear(), Date객체.getMonth(), Date객체.getDate(), Date객체.getDay(), Date객체.getHours(), Date객체.getMinutes(), Date객체.getSeconds(), Date객체.getMilliseconds()
    각각 Date객체의 년, 월, 일, 요일, 시, 분, 초, 밀리초를 반환한다.

  5. Date객체.setFullYear(인수), Date객체.setMonth(인수), Date객체.setDate(인수), Date객체.setHours(인수), Date객체.setMinutes(인수), Date객체.setSeconds(인수), Date객체.setMilliseconds(인수)
    각각 Date객체의 년, 월, 일, 시, 분, 초, 밀리초를 전달받은 인수로 지정한다.

  6. Date객체.getTime()
    1970년 1월 1일 00:00:00(UTC)부터 해당 Date객체의 시간까지 경과된 시간을 밀리초로 반환한다.

  7. Date객체.setTime(인수)
    1970년 1월 1일 00:00:00(UTC)부터 인수로 들어온 밀리초만큼 경과된 시간을 Date객체에 설정한다.

  8. Date객체.getTimezoneOffset()
    UTC와 Date객체에 지정된 로컬 시간과의 차이를 분 단위로 반환한다.

  9. Date객체.toDateString()
    Date객체의 날짜를 사람이 읽을 수 있는 형태의 문자열로 반환한다.

  10. Date객체.toTimeString()
    Date객체의 시간를 사람이 읽을 수 있는 형태의 문자열로 반환한다.

  11. Date객체.toISOString()
    Date객체의 날짜와 시간를 ISO 8601 형식의 문자열로 반환한다.

  12. Date객체.toLocaleString(인수)
    Date객체의 날짜와 시간을 인수로 전달된 로컬지역에서 사용하는 표현방법으로 나타낸 문자열을 반환한다.

  13. Date객체.toLocaleTimeString(인수)
    Date객체의 시간을 인수로 전달된 로컬지역에서 사용하는 표현방법으로 나타낸 문자열을 반환한다.

profile
I Will be Relaxed Person

0개의 댓글