[Zoned Datetime] 1970-01-01T00:00:00.000Z 의 의미? Unix 타임스탬프 기준시간



1. Problem

프로그래밍을 하면서 Zoned Datetime 을 사용하다보면 Date 1970-01-01T00:00:00.000Z 형식의 값을 많이 확인할 수 있습니다.

image

js 에서는 아래와 같이 new Date(0) 를 사용하면 위의 날짜가 출력되는 것을 확인할 수 있습니다.

new Date(0);
// Thu Jan 01 1970 09:00:00 GMT+0900 (한국 표준시)

1970-01-01T00:00:00.000Z 에 무슨 일이 있었길래 이 값을 컴퓨터에서는 많이 사용하는 것일까요?

2. Solution

1970-01-01T00:00:00.000Z유닉스 타임스탬프(epoch time)의 시작점입니다. 유닉스 타임스탬프(epoch time)는 1970년 1월 1일 00:00:00(UTC)를 기준으로 하고, 이후 경과된 초(second)를 나타내는 시스템입니다. 따라서, 1970-01-01T00:00:00.000Z은 유닉스 타임스탬프(epoch time)의 0초를 나타내며, 이를 기준으로 이후의 모든 시간을 초 단위로 계산할 수 있습니다. 컴퓨터 운영체제에서는 위의 시간 값을 기준 시간으로 사용합니다.

문제 해결에 도움이 되셨으면 좋겠습니다! 읽어주셔서 감사합니다!