welcome to sisi's space! ‎ε(*⌒▽⌒)੭*゚¨゚゚・*:..☆

Dev & Study

[javascript] Epoch time이란, 현재 Epoch time 얻는 법

Sisi_ 2026. 3. 3. 01:44

Epoch time: Unix epoch(1970년 1월 1일 00:00:00 UTC) 이후부터 경과한 시간을 숫자로 나타내는 방식. 보통 초(second) 또는 밀리초(milliseconds) 단위의 정수로 저장된다. 시스템 간 시간 표현을 단순하게 맞추기 위해 널리 사용된다.

 

예시:

  • 0 → 1970년 1월 1일 00:00:00 UTC
  • 1737417600000 → 2026년 1월 21일 00:00:00 UTC

이처럼 사람이 읽는 형태의 날짜가 아니라, 특정 기준 시점 이후 얼마나 시간이 지났는지를 나타내는 숫자다. 대부분의 웹 환경과 JavaScript에서는 밀리초 단위 Epoch time을 사용한다.

 

Epoch time의 특징:

  • 타임존(Time Zone)에 독립적이다. 일반적인 날짜 문자열은 시스템 설정이나 지역에 따라 다르게 해석될 수 있지만, Epoch time은 단순한 숫자이기 때문에 어느 환경에서든 동일한 의미를 가진다. 서버와 클라이언트가 서로 다른 국가에 있더라도 시간 계산이 일관되게 유지된다.
  • 날짜 및 시간 계산이 매우 단순하다. 예를 들어 두 시점 사이의 차이를 구하려면 숫자를 빼기만 하면 된다. 일정 시간 뒤의 시점을 계산할 때도 밀리초 값을 더하는 방식으로 처리할 수 있다. 복잡한 날짜 파싱이나 포맷 변환이 필요 없다는 점에서 프로그램 내부 로직에 적합하다.
  • DB 측면에서도 장점이 있다. 문자열 형태의 날짜보다 숫자 형태로 저장하는 게 효율적이며, 정렬/비교 연산도 빨라진다. 로그 시스템, 이벤트 기록, 캐시 만료 시간 관리 등에서 많이 사용되는 이유이다.

JavaScript에서 현재 Epoch time을 얻는 방법:

// 방법 1
const now1 = Date.now();

// 방법 2
const now2 = new Date().getTime();

두 방법 모두 Unix epoch 이후 경과한 밀리초(milliseconds) 값을 리턴한다.