주요 콘텐츠로 건너뛰기
FreeOnlineTools Go
한국어
방법

Unix 타임스탬프를 사람이 읽을 수 있는 날짜로 변환하는 방법

작성자: FreeOnlineTools Team · 2026-08-28에 업데이트됨

빠른 답변

Unix 타임스탬프 = 1970-01-01 00:00:00 UTC 이후의 초(또는 밀리초). JavaScript에서 new Date(timestamp * 1000)(초) 또는 new Date(timestamp)(밀리초)를 사용하여 날짜로 변환합니다. Math.floor(date.getTime() / 1000)을 사용하여 날짜를 다시 변환합니다. 타임스탬프 변환기를 사용하면 브라우저에서 두 가지 작업을 즉시 수행할 수 있습니다.

소개

Unix 타임스탬프(epoch 시간 또는 POSIX 시간이라고도 함)는 윤초를 제외한 1970-01-01 00:00:00 UTC(Unix epoch) 이후 경과된 초 수입니다. 이는 시간대에 독립적이고 간단하게 정렬 가능한 단일 정수이기 때문에 컴퓨팅에서 시간의 공용어입니다. 대부분의 시스템은 초를 사용합니다. JavaScript와 많은 데이터베이스는 밀리초를 사용합니다.

단계별

  1. 초와 밀리초 이해

    대부분의 백엔드 시스템과 APIs은 초(2286년까지 10자리 타임스탬프)를 사용합니다. JavaScript의 Date 및 Java의 Instant는 밀리초(13자리)를 사용합니다. API에 어떤 단위가 필요한지 항상 확인하세요. 두 단위를 혼합하면 날짜가 1000배만큼 이동합니다(~31년 차이).

  2. 타임스탬프를 읽을 수 있는 날짜로 변환

    타임스탬프를 타임스탬프 변환기에 붙여넣습니다. 길이(10자리 대 13자리)로 초와 밀리초를 감지하고 날짜를 UTC와 현지 시간대로 표시합니다. 코드에서: new Date(1700000000 * 1000).toISOString()은 '2023-11-14T22:13:20.000Z'를 반환합니다.

  3. 날짜를 타임스탬프로 변환

    변환기에 날짜와 시간을 입력하십시오. Unix 타임스탬프를 반환합니다. 코드에서: Math.floor(new Date('2026-08-28T12:00:00Z').getTime() / 1000) 은 에포크 초를 반환합니다. 현지 시간의 모호성을 방지하려면 항상 시간대(Z 또는 오프셋)를 지정하세요.

  4. 시간대를 올바르게 처리

    Unix 타임스탬프는 항상 UTC이며 시간대가 없습니다. 프레젠테이션 레이어에서만 로컬 디스플레이로 변환합니다. 현지 시간을 타임스탬프로 저장하지 마세요. UTC를 저장하고 디스플레이로 변환합니다. 올바른 DST 처리를 위해 Intl.DateTimeFormat과 함께 IANA 시간대 이름(America/New_York)을 사용하십시오.

  5. 날짜 간의 차이 계산

    초(또는 밀리초) 단위의 차이를 얻으려면 두 개의 타임스탬프를 뺍니다. 분은 60, 시간은 3600, 일수는 86400으로 나눕니다. 인간 친화적인 범위에는 날짜 차이 도구를 사용하고, 생년월일 기반 연령에는 연령 계산기를 사용하세요.

예

유닉스 시대

입력: 0 (seconds)

산출: 1970-01-01 00:00:00 UTC

에포크 이후 10억초

입력: 1000000000 (seconds)

산출: 2001-09-09 01:46:40 UTC

2026년 시작(UTC 기준)

입력: 2026-01-01T00:00:00Z

산출: 1767225600(초) / 1767225600000(밀리초)

두 날짜의 차이

입력: 1767225600 - 1700000000

산출: 67225600 seconds = 778.08 days ≥2 years 31 days

일반적인 문제

  • 초 대 밀리초 혼동: 밀리초로 읽는 10자리 타임스탬프는 1970년의 날짜를 제공합니다. 초 단위로 읽은 13자리 타임스탬프가 32비트 정수를 오버플로합니다. 자릿수로 단위를 감지하거나 API에 명시적으로 문서화합니다.
  • 현지 시간을 타임스탬프로 저장: 타임스탬프는 UTC입니다. UTC-5로 설정된 브라우저에서 Date.now()를 계산하고 결과를 로컬로 처리하는 경우 DST 전환으로 인해 1년에 두 번씩 데이터가 한 시간씩 이동됩니다.
  • 2038-01-19 03:14:07 UTC(Y2038)의 32비트 오버플로: 부호 있는 32비트 초 타임스탬프를 사용하는 시스템은 이 시점 이후의 날짜를 나타낼 수 없습니다. 새 시스템에서는 64비트 또는 밀리초 타임스탬프를 사용합니다.
  • 윤초는 무시됩니다. Unix 타임스탬프는 윤초를 건너뛰므로 두 타임스탬프 간의 차이는 경과된 SI 초 수와 동일하지 않습니다. 대부분의 애플리케이션은 이를 무시할 수 있습니다. 고정밀 천문학과 금융은 할 수 없습니다.

팁

  • 항상 UTC로 타임스탬프를 저장하고 전송하세요. IANA 시간대와 함께 Intl.DateTimeFormat을 사용하여 표시 계층에서만 현지 시간으로 변환합니다.
  • 사람이 읽을 수 있는 APIs에는 ISO 8601 문자열(예: 2026-08-28T12:00:00Z)을 사용하고 저장에는 타임스탬프를 사용합니다. ISO 문자열은 해당 시간대를 명시적으로 전달하며 명확합니다.
  • 타임스탬프를 비교할 때 양쪽에 동일한 단위(초 또는 밀리초)를 사용하십시오. 단위 불일치는 가장 일반적인 날짜 버그 중 하나입니다.
  • 타임스탬프 변환기를 사용하여 디버깅 중에 API 응답의 상태를 확인하세요. 이는 UTC와 현지 시간을 모두 표시하므로 시간대 버그를 즉시 발견할 수 있습니다.

관련 도구

관련 가이드

참고자료