🌐 KO

📅 ISO 8601 날짜 포맷터

날짜/시간을 어떤 형식으로 입력해도(ISO 8601, RFC 2822, 유닉스 타임스탬프 초/밀리초 등) 자동으로 인식하여 ISO 8601, RFC 2822, 유닉스 타임스탬프, 로컬 시각 등 여러 형식으로 동시에 보여줍니다. UTC 오프셋을 선택하면 해당 시간대 기준 ISO 8601 표현도 계산합니다.

가이드

자세히 알아보기

01

1. ISO 8601이란?

ISO 8601은 날짜와 시간을 표기하는 국제 표준 형식으로, "YYYY-MM-DDTHH:mm:ss.sssZ"처럼 연-월-일과 시:분:초를 T로 구분하고, 마지막에 UTC(Z) 또는 시간대 오프셋(+09:00 등)을 붙입니다. 로그, API 응답, 데이터베이스 저장 등에서 사람과 기계 모두 오해 없이 읽을 수 있도록 널리 쓰이는 형식입니다.

02

2. 유닉스 타임스탬프와 오프셋 계산

유닉스 타임스탬프는 1970-01-01T00:00:00Z부터 경과한 초(또는 밀리초)를 나타냅니다. 이 도구는 입력값이 순수 숫자면 자릿수(10~11자리는 초, 13자리는 밀리초)로 자동 판별합니다. 선택한 오프셋으로 ISO 8601을 표시할 때는 UTC 시각에 오프셋(분 단위)을 더한 뒤 그 결과를 "벽시계 시간"으로 포맷하고 원래 오프셋을 접미사로 붙이는 방식으로 계산합니다 — 이는 브라우저의 로컬 시간대와 무관하게 항상 정확합니다.

03

3. RFC 2822와 HTTP 날짜

RFC 2822(이메일 헤더에서 흔히 쓰임)와 HTTP Date 헤더는 "Tue, 15 Jan 2024 09:30:00 GMT"와 같은 형식을 사용합니다. 자바스크립트의 toUTCString()이 이 형식을 생성하며, Date.parse()는 이 형식과 ISO 8601을 모두 인식할 수 있어 다양한 소스(로그 파일, API 헤더, 데이터베이스 덤프 등)의 날짜를 이 도구 하나로 변환할 수 있습니다.

자주 묻는 질문

어떤 형식의 날짜를 입력할 수 있나요?
ISO 8601(2024-01-15T09:30:00Z), RFC 2822(Mon, 15 Jan 2024 09:30:00 GMT), 유닉스 타임스탬프(초 또는 밀리초 단위 숫자), 그리고 브라우저의 Date.parse()가 인식하는 대부분의 일반적인 날짜 문자열을 입력할 수 있습니다.
유닉스 타임스탬프가 초인지 밀리초인지 어떻게 구분하나요?
입력이 숫자로만 이루어져 있으면 자릿수로 판별합니다. 10~11자리는 초 단위(예: 1700000000), 13자리는 밀리초 단위(예: 1700000000000)로 처리합니다.
선택한 오프셋의 ISO 8601은 어떻게 계산되나요?
UTC 기준 시각에 선택한 오프셋(분 단위)을 더해 "그 오프셋에서의 벽시계 시간"을 구한 뒤, 연-월-일 시:분:초.밀리초 뒤에 해당 오프셋을 +HH:MM 또는 -HH:MM 형식으로 붙입니다. 브라우저의 로컬 시간대 설정과 무관하게 항상 같은 결과가 나옵니다.
입력한 날짜가 서버로 전송되나요?
아니요. 모든 변환은 브라우저의 자바스크립트 안에서만 수행되며 서버로 전송되지 않습니다.