티스토리 뷰
UTC(Coordinated Universal Time): 세계 협정시
GMT(Greenwich Mean Time): 그리니치 평균시
UTC, GMT는 교환되어 사용될 수 있으나 GMT가 과학적으로 정확하지 않다고 정의됨.
UTC, GMT는 영국 그리니치 천문대를 지나는 본초자오선(경도 0°)을 기준 시간으로 함.
UTC 형식 : 1981-02-22T09:00Z (UTC 시간대일 경우 Z가 붙는다)
1981-02-22T09:00:00+09:00 (UTC 시간대가 아닐 경우 ±hh:mm, ±hhmm, ±hh을 붙인다)
JavaScript에서Date 생성시 반환값 (기본 GMT형식 / UTC로 변환/ Locale 적용 formmat)
console.log('TimeZone:', new Date().getTimezoneOffset())
->TimeZone Offset: -540 (한국 시간에서 9시간을 빼면 UTC Time)
var date = new Date();
console.log(date);
-> Thu Oct 20 2016 15:06:08 GMT+0900 (KST)
console.log(date.toISOString());
-> 2016-10-20T06:15:26.812Z
console.log(date.toLocaleString());
-> 2016. 10. 20. 오후 3:15:26
var d = new Date('2016-10-22T15:00:00.000Z');
console.log(d);
->Sun Oct 23 2016 00:00:00 GMT+0900 (KST)
console.log(d.toISOString());
->2016-10-22T15:00:00.000Z
console.log(d.toLocaleString());
->2016. 10. 23. 오전 12:00:00
var d2 = new Date('2016-10-22T15:00:00+09:00');
console.log(d2);
->Sat Oct 22 2016 15:00:00 GMT+0900 (KST)
console.log(d2.toISOString());
->2016-10-22T06:00:00.000Z
console.log(d2.toLocaleString());
->2016. 10. 22. 오후 3:00:00
var d3 = new Date('2016-10-22T15:00:00');
console.log(d3);
->Sun Oct 23 2016 00:00:00 GMT+0900 (KST)
console.log(d3.toISOString());
->2016-10-22T15:00:00.000Z
console.log(d3.toLocaleString());
->2016. 10. 23. 오전 12:00:00;
var d4 = new Date('2016-10-22 15:00:00');
console.log(d4);
->Sat Oct 22 2016 15:00:00 GMT+0900 (KST)
console.log(d4.toISOString());
->2016-10-22T06:00:00.000Z
console.log(d4.toLocaleString());
->2016. 10. 22. 오후 3:00:00
결론. Javascritp에서 Date 객체를 인자를 주지 않고 생성할 경우
new Date() = 컴퓨터에서 사용하는 Time Zone으로 인식, 현지시간을 반환
시간 문자열 인자를 넘겨줄 경우
1) UTC 포멧의 UTC 시간 => UTC Time Zone으로 인식
2) UTC 포멧의 다른 Time Zone 시간 => 입력된 Time Zone으로 인식
3) UTC 포멧의 Time Zone표시가 없는 시간 => UTC Time Zone으로 인식
4) UTC 포멧이 아닌 시간 문자열 => 컴퓨터에서 사용하는 Time Zone으로 인식
=> 1,2,3,4번 에서 인식된 Time Zone으로 현지시간을 계산하여 반환
'Programming > Web' 카테고리의 다른 글
[퍼온글] 수정배포된 CSS/JS 파일 캐시 방지 (0) | 2016.12.23 |
---|---|
[Javascript] Date / DateTime / Time string format change (0) | 2016.11.24 |
[프로그래밍] Remote postgreSQL DB 접속 (0) | 2016.11.03 |
[프로그래밍] Homebrew / PostgreSQL (0) | 2016.11.03 |
Tomcat 상태 확인 명령어 (0) | 2016.08.12 |