본문 바로가기
Books/모던 JS Deep Dive ✔️

[모던 JS Deep Dive] 30장 - Date

by Aaron-Kim 2022. 1. 15.

30.1 Date 생성자 함수

  - new Date()

    - 현재 날짜와 시간 가지는 Date 객체 반환

    - new 연산자 없이 호출하면 날짜와 시간 정보 나타내는 문자열 반환

  - new Date(milliseconds)

    - 1970년 1월 1일 00:00:00(UTC)을 기점으로

      인수로 전달된 밀리초만큼의 경과한 날짜와 시간 나타내는 Date 객체 반환

    - 한국 표준시 KST는 협정 세계시 UTC에 9시간 더한 시간임

  - new Date(dateString)

    - 날짜와 시간을 나타내는 문자열을 인수로 전달하면 지정된 날짜와 시간을 나타내는 Date 객체 반환

    - 인수로 전달한 문자열은 Date.parse 메서드에 의해 해석 가능한 형식이어야 함

  - new Date(year, month[, day, hour, minute, second, millisecond])

    - 연, 월, 일, 시, 분, 초, 밀리초에 대한 숫자를 인수로 전달하면 지정된 날짜와 시간을 나타내는 Date 객체 반환

    - 연, 월은 반드시 지정 (지정하지 않은 옵션은 0 또는 1로 초기화됨)

      - 연, 월 지정 안하면 1970년 1월 1일 00:00:00(UTC) 나타내는 Date 객체 반환

    - month은 0 ~ 11 정수 (0은 1월)

30.2 Date 메서드

  - Date.now

    - 1970년 1월 1일 00:00:00(UTC)을 기점으로 현재 시간까지 경과한 밀리초를 숫자로 반환

  - Date.parse

    - 1970년 1월 1일 00:00:00(UTC)을 기점으로 인수로 전달된 지정 시간까지의 밀리초를 숫자로 반환

    - 인수의 형태는 new Date(dateString)와 같은 형식의 인수

  - Date.UTC

    - 1970년 1월 1일 00:00:00(UTC)을 기점으로 인수로 전달된 지정 시간까지의 밀리초를 숫자로 반환

    - 인수의 형태는 new Date(year, month, [, day, hour, minute, second, millisecond])와 같은 형식의 인수

    - 인수는 UTC로 인식됨

    - month은 0 ~ 11 정수

  - Date.prototype.getFullYear

    - Date 객체의 연도 나타내는 정수 반환

  - Date.prototype.setFullYear

    - Date 객체의 연도를 나타내는 정수 설정 (월, 일도 설정 가능)

  - Date.prototype.getMonth

    - Date 객체의 월을 나타내는 0 ~ 11 정수 반환

  - Date.prototype.setMonth

    - Date 객체에 월을 나타내는 0 ~ 11 정수 설정 (일도 설정 가능)

  - Date.prototype.getDate

    - Date 객체의 날짜(1 ~ 31)를 나타내는 정수 반환

  - Date.prototype.setDate

    - Date 객체에 날짜(1 ~ 31)를 나타내는 정수 설정

  - Date.prototype.getDay

    - Date 객체의 요일(0 ~ 6)을 나타내는 정수 반환

    - 0은 일요일, 6은 토요일

  - Date.prototype.getHours

    - Date 객체의 시간(0 ~ 23)을 나타내는 정수 반환

  - Date.prototype.setHours

    - Date 객체에 시간(0 ~ 23)을 나타내는 정수 설정 (분, 초, 밀리초도 설정 가능)

  - Date.prototype.getMinutes

    - Date 객체의 분(0 ~ 59)을 나타내는 정수 반환

  - Date.prototype.setMinutes

    - Date 객체에 분(0 ~ 59)을 나타내는 정수 설정 (초, 밀리초도 설정 가능)

  - Date.prototype.getSeconds

    - Date 객체의 초(0 ~ 59)를 나타내는 정수 반환

  - Date.prototype.setSeconds

    - Date 객체에 초(0 ~ 59)를 나타내는 정수 설정 (밀리초도 설정 가능)

  - Date.prototype.getMilliseconds

    - Date 객체의 밀리초(0 ~ 999)를 나타내는 정수 반환

  - Date.prototype.setMilliseconds

    - Date 객체에 밀리초(0 ~ 999)를 나타내는 정수 설정

  - Date.prototype.getTime

    - 1970년 1월 1일 00:00:00(UTC)을 기점으로 Date 객체의 시간까지 경과된 밀리초 반환

  - Date.prototype.setTime

    - Date 객체에 1970년 1월 1일 00:00:00(UTC)를 기점으로 경과된 밀리초 설정

    - 86,400,000 ms은 1 day를 나타냄

  - Date.prototype.getTimezoneOffset

    - UTC와 Date 객체에 지정된 locale 시간과의 차이를 분 단위로 반환

    - UTC = KST - 9h

  - Date.prototype.toDateString

    - 사람이 읽을 수 있는 형식의 문자열로 Date 객체의 날짜 반환

  - Date.prototype.toTimeString

    - 사람이 읽을 수 있는 형식으로 Date 객체의 시간을 표현한 문자열 반환

  - Date.prototype.toISOString

    - ISO 8601 형식으로 Date 객체의 날짜와 시간을 표현한 문자열 반환

    - slice 메서드와 replace 메서드를 이용하여 부분 추출 가능

  - Date.prototype.toLocaleString

    - 인수로 전달한 locale을 기준으로 Date 객체의 날짜와 시간을 표현한 문자열 반환

    - 인수 생략 시 브라우저가 동작 중인 시스템의 locale 적용

  - Date.prototype.toLocaleTimeString

    - 인수로 전달한 locale을 기준으로 Date 객체의 시간을 표현한 문자열 반환

30.3 Date를 활용한 시계 예제

반응형

댓글