[javascript] Timezone

2023. 12. 19. 10:01Study/Javascript

 

실시간으로 당첨된 내역을 불러오면서 몇시간 전인지 보여주는 뱃지를 구현해야했다.

 

 

당첨 내역이 한시간 이내면 n분 전, 이상이면 n시간 전으로 나오게끔 해놓았는데 로컬에서는 문제가 없었으나 배포하고나니 -nnnn분 전 이런 시간으로 출력되었다.

계산을 해보니 얼추 9시간 정도의 오차가 나왔고 아 이게 그 timezone 문제구나를 깨달았다.

 

Timezone이란 동일한 로컬 시간을 따르는 지역을 의미한다.

예를 들어 미국의 경우 다양한 timezone으로 나눠진다.

Central Standard Time
Mountain Standard Time
Pacific Standard Time
Eastern Standard Time
등 ...

참고: 
https://docs.oracle.com/middleware/12212/wcs/tag-ref/MISC/TimeZones.html

 

 

timezone의 기준이 되는 시간은 UTC(Coordinated Universal Time/Universal Time Coordinated) 1972 1 1일부터 시행된 국제 표준시이다

가끔 GMT(Greenwich Mean Time)도 볼 수 있는데 UTC가 등장하기 이전에 사용되던 표준시로 영국 그리니치 천문대 위치를 중심으로 한 표준시이다. 시간대는 비슷하나 UTC가 더 정확하다고 한다.

 

한국표준시는 KST라고 하며(Korea Standard Time) 표준 시간대보다 9시간이 빠르다(GMT+9)

따라서 구현할 때 9시간을 더해줘야 정상적으로 출력된다.