[240417] 30장 Date

  • UTC : 국제 표준시
  • KST : 한국표준시 ( UTC에서 9시간 더한 시간)

Date 생성자 함수

  • 내부적으로 날짜와 시간을 나타내는 정수 값을 가짐
  • 1970년 1월 1일 0시를 기점으로 객체는 내부적으로 정수값 0을 가지며, 하루가 지나면 86,400,000 ( 24h * 60m * 60s * 1000ms )

1. new Date()

  • 현재 날짜와 시간을 가지는 Date 객체 반환
  • new 연산자 없이 호출하면 Date 객체를 반환하지 않고 날짜와 시간 정보를 나타내는 문자열을 반환

2. new Date(milliseconds)

  • 1970년 1월 1일 기점으로 전달된 밀리초만큼 경과한 시간을 나타내는 Date 객체 반환

3. new Date(dateString)

  • Date.parse 메서드에 의해 해석 가능한 형식이어야한다.
new Date('May 26, 2020 10:00:00');
new Date('2020/03/26/10:00:00');

4. new Date(year, moth[, day, hour, minute, second, millisecond])

인수 내용
year 연을 나타내는 1990년 이후 정수.
0부터 99는 1900부터 1999  
month 0~11 0 = 1월
day 1~31
hour 0~23
minute 0~59
second 0~59
millisecond 0~999
new Date(2020,2);
new Date(2020,2,26,10,00,00,0);
new Date('2020/3/26/10:00:00');

Date 메서드

1. Date.now

  • 1970년 1월 1일 기점으로 현재 시간까지 경과한 밀리초 숫자 반환

2. Date.parse

  • 1970년 1월 1일 기점으로 인수로 전달된 지정 시간의 인수와 동까지 밀리초 숫자로 반환
// UTC
	Date.parse('Jan 2, 1970 00:00:00 UTC'); // 86400000
// KST
Date.parse('Jan 2, 1970 09:00:00'); // 86400000

3. Date.UTC

  • UTC 메서드의 인수는 로컬타임 KST가 아닌 UTC로 인식
  • new Date(year, moth[, day, hour, minute, second, millisecond]) 와 같은 형식 인수 사용해야함

4. Date.prototype.getFullYear

  • 정수 반환
new Date('2020/07/24').getFullYear(); // 2020

5. Date.prototype.setFullYear

  • 연도를 나타내는 정수 설정
  • 월 일도 설정 가능
const today = new Date();
today.setFullYear(2000);
today.getFullYear(); // 2000 

6. Date.prototype.getMonth

  • 0~11 정수를 반환

7. Date.prototype.setMonth

  • 0~11 정수 설정 이외에 일도 설정 가능

8. Date.prototype.getDate

  • 1~31 정수를 반환

9. Date.prototype.setDate

  • 1~31 정수 설정

10. Date.prototype.getDay

  • 요일 0~6 반환
  • 일요일 0

11. Date.prototype.getHours

  • 0~23 시간 반환
new Date('2020/07/24/12:00').getHours(); // 12

12. Date.prototype.setHours

  • 0~23 시간 설정, 이외에도 분 초 밀리초 설정 가능

13. Date.prototype.getMinutes

  • 0~59 분 반환

14. Date.prototype.setMinutes

  • 초, 밀리초 가능

15. Date.prototype.getSeconds

16. Date.prototype.setSeconds

17. Date.prototype.getMilliseconds

18. Date.prototype.setMilliseconds

19. Date.prototype.getTime

  • 1970년 1월 1일 기점으로 Date 객체의 시간까지 경과된 밀리초 반환

20. Date.prototype.setTime

  • 1970년 1월 1일 기점으로 경과된 밀리초 설정

21. Date.prototype.getTimezoneOffset

  • UTC Date 객체에 저장된 로캘 시간과의 차이를 분 단위로 반환

22. Date.prototype.toDateString

  • 사람이 읽을 수 있는 형식의 문자열로 반환

23. Date.prototype.toTimeString

  • 사람이 읽을 수 있는 시간을 문자열을 반환

24. Date.prototype.toISOString

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

25. Date.prototype.toLocaleString

  • 인수로 전달한 로캘 기준으로 Date 객체의 날짜와 시간을 표현한 문자열을 반환
  • 인수를 생략한 경우 브라우저가 동작 중인 시스템의 로캘 적용
const today = new Date('2020/7/24/12:30');

today.toString(); // Fri Jul 24 2020 12:30:00 GMT+0900 (대한민국 표준시)
today.toLocaleString(); // 2020. 7. 24. 오후 12:30:00
today.toLocaleString('ko-KR'); // 2020. 7. 24. 오후 12:30:00
today.toLocaleString('en-US'); // 7/24/2020, 12:30:00 PM
today.toLocaleString('ja-JP'); // 2020/7/24 12:30:00

26. Date.prototype.toLocaleTimeString

  • 인수로 전달한 로캘 기준으로 Date 객체의 시간을 표현한 문자열을

Categories:

Updated:

Leave a comment