상대 시간 포매터
과거·미래 날짜를 2시간 전·3일 후·지난달 같이 — 12개 로케일·3가지 스타일(long/short/narrow)·numeric: auto로 자연어 표현까지.
사용법
- 대상 날짜 선택. 기준은
지금에 두면 라이브 카운터, 체크 해제 시 고정 두 날짜 비교. - 로케일 전환 → 스페인어·한국어·아랍어 등이 같은 차이를 어떻게 렌더링하는지 확인. 구문 모양 자주 바뀜(RTL·조사·성별 명사).
- 단위 표로 입자 옆에 나란히 비교 → 인터페이스에서 가장 자연스럽게 읽히는 것 선택.
자세한 설명
펼치기접기
브라우저에 내장된 Intl.RelativeTimeFormat을 실시간으로 살펴보는 작업대입니다. 대상 날짜와 기준 시각을 고르면(기준은 기본값이 '지금'이고 1초마다 갱신됩니다) 선택한 로케일로 서식화된 문자열이 나옵니다. 단위 표는 같은 시간 차이를 초·분·시·일·주·월·분기·연으로 한꺼번에 렌더링해 주므로, 특정 화면에서 어느 단위가 가장 잘 읽히는지 가장 빠르게 판단할 수 있습니다.
흥미로운 동작은 numeric 옵션에 있습니다. always를 쓰면 산수 그대로의 형태가 나옵니다. 1 day ago, in 1 day, 그리고 차이가 0일 때는 다소 어색한 in 0 days까지 그대로입니다. auto를 쓰면 해당 언어에 단어가 있는 경우 그 단어로 바뀝니다. 영어라면 yesterday, today, tomorrow, last week, last quarter가 나오고, 한국어라면 어제가 나옵니다. 영어보다 더 멀리 가는 언어도 있습니다. 스페인어는 이틀 전을 anteayer라는 한 단어로 돌려줍니다. 다국어 화면에서 auto를 써야 하는 이유가 이것입니다. 영어 문장을 번역한 결과가 아니라 각 언어 고유의 관용 표현을 그대로 얻을 수 있습니다.
이 API는 복수형 일치도 처리합니다. 직접 만든 서식기가 언제나 틀리는 부분이 바로 여기입니다. 러시아어는 2 дня назад이지만 5 дней назад이고, 폴란드어·아랍어·웨일스어에는 각자의 분류 체계가 있습니다. 번역된 문자열에 숫자를 끼워 넣는 템플릿으로는 이를 표현할 수 없고, 그래서 이 서식기가 여러분의 코드가 아니라 플랫폼 쪽에 존재합니다.
의도적으로 하지 않는 일이 하나 있는데, 단위를 골라 주지 않는다는 것입니다. 값과 단위를 넘기면 넘긴 그대로 서식화합니다. 소수도 그대로여서 day 단위에 -1.5를 넘기면 1.5 days ago가 나옵니다. 단위를 고르고 반올림하는 일은 여러분의 코드 몫이고, 그 일에는 한 가지 미묘한 지점이 있습니다. 대부분의 화면에서 "어제"는 24시간 전이 아니라 달력상 전날을 뜻합니다. 화요일 오전 1시에 월요일 밤 11시 사건은 산수로는 두 시간 전이고, 이 서식기는 그렇게 말합니다. "어제"라고 말하게 하려면 단위를 정하기 전에 사용자 시간대의 달력 날짜끼리 비교해야 합니다. 여기 단위 표는 모든 단위에 대한 산수 결과를 보여 주므로 그 어긋남을 눈으로 확인하기 쉽습니다.
자주 묻는 질문
numeric: auto와 always 차이?
auto는 가능할 때 관용 표현 반환 — 1일 전 대신 어제, 1주 전 대신 지난주. always는 숫자 강제 → 보통 리터럴 기간 표시에 원하는 것. 채팅 스타일 타임스탬프 원하는 UI엔 보통 auto.
같은 차이가 다른 단위 주는 이유?
메인 출력은 절댓값 ≥ 1인 가장 큰 단위 선택 → 90분은 90분 전 가능해도 1시간 전으로 표시. 단위 표로 모든 옵션 확인 가능.
상대 시간 표기가 페이지에서 낡아버리는 이유는?
렌더링될 때 한 번 계산되기 때문이다. 한 시간 열어둔 페이지는 무언가 다시 그리지 않는 한 여전히 2분 전이라고 말한다. 서버에서 렌더링한 페이지는 빌드된 순간을 구워 넣고, 캐시가 그것을 모두에게 내준다. 클라이언트에서 주기적으로 다시 계산하거나, 정확한 시각을 title 속성에 넣어 낡은 문구라도 확인할 근거를 남겨라.
상대 시간이 잘못된 선택인 경우는?
독자가 실제 날짜를 가지고 행동해야 할 때다. 마감, 약속, 만료, 남에게 인용해야 할 것들이 그렇다. 사흘 전은 그게 무슨 요일이었는지를 감추고, 열한 달 전은 연도를 통째로 감춘다. 상대 표현은 피드에서 최신성을 보여주기엔 좋고 기록으로는 나쁘다. 흔한 절충은 하루 이틀까지는 상대 표현, 그 뒤로는 절대 날짜다.
관련 도구
D-day 계산기
두 날짜 사이의 일수, 또는 특정 날짜까지의 D-day를 계산하세요.
시간
날짜 계산기
날짜에서 연·월·주·일·영업일을 더하거나 빼고, 두 날짜의 차이도 계산합니다.
시간
달 위상 계산기 (조도·달 나이·다음 보름/그믐)
어떤 날짜든 골라서 달의 위상 이름, 조도(%), 마지막 신월 이후 경과 일수, 현재 초승/반/보름 모양의 SVG 그림, 그리고 다음 신월과 보름 날짜를 — 사용자 지정 가능한 미래 창 안에서 — 한 번에 봅니다.
시간
유닉스 타임스탬프 변환기
유닉스 타임스탬프를 날짜로, 날짜를 타임스탬프로 변환하세요.
시간
시간 차이 계산기
두 날짜·시각의 차이를 일·시·분·초로 정확히 계산합니다.
시간
항성시 계산기 (GMST, LMST, 율리우스일)
임의의 UTC 시각을 그리니치/지역 평균·겉보기 항성시, 율리우스일(JD), 수정율리우스일(MJD), 지구 자전각으로 변환 — 망원경 정렬·천체 관측·천문 소프트웨어용.
시간