Intl.RelativeTimeFormat() 생성자
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020년 9월.
Intl.RelativeTimeFormat() 생성자는 Intl.RelativeTimeFormat 객체를 생성합니다.
구문
new Intl.RelativeTimeFormat()
new Intl.RelativeTimeFormat(locales)
new Intl.RelativeTimeFormat(locales, options)
매개변수
localesOptional-
BCP 47 언어 태그가 포함된 문자열 또는
Intl.Locale인스턴스 또는 이러한 로케일 식별자의 배열입니다.undefined이 전달되거나 명시된 로케일 식별자가 지원되지 않는 경우 런타임의 기본 로케일이 사용됩니다.locales인수의 일반적인 형식과 해석에 대해서는Intl메인 페이지의 매개변수 설명을 참조하세요.허용되는 유니코드 확장 키는 아래와 같습니다.
nu-
numberingSystem를 참고하세요.
이 키는 아래 나열된 대로
options으로 설정할 수도 있습니다. 둘 다 설정된 경우options속성이 우선합니다. optionsOptional-
검색되는 순서대로 다음 속성을 포함하는 객체입니다(모두 선택 사항입니다).
localeMatcher-
사용할 로케일 일치 알고리즘입니다. 가능한 값은
"lookup"및"best fit"이며, 기본값은"best fit"입니다. 이 옵션에 대해 더 알고 싶으시다면 로케일 식별 및 협상을 참고하시기 바랍니다. numberingSystem-
숫자 형식화에 사용할
"arab","hans","mathsans"등의 숫자 체계입니다. 지원되는 숫자 체계 유형 목록은Intl.Locale.prototype.getNumberingSystems()를 참고하시기 바랍니다. 이 옵션은nu유니코드 확장 키를 통해서도 설정할 수 있으며, 둘 다 제공된 경우 이옵션속성이 우선합니다. style-
형식화된 상대 시간의 스타일입니다. 가능한 값은 다음과 같습니다.
"long"(default)-
예를 들어, "in 1 month"
"short"-
예를 들어, "in 1 mo."
"narrow"-
예를 들어, "in 1 mo.". 좁은 스타일은 일부 로케일의 경우 짧은 스타일과 유사할 수 있습니다.
numeric-
출력에 숫자 값을 사용할지 여부입니다. 가능한 값은
"always"및"auto"이며, 기본값은"always"입니다."auto"으로 설정하면 출력에"1 day ago"이 아닌"yesterday"와 같은 관용적인 문구가 더 많이 사용될 수 있습니다.
예외
RangeError-
locales또는options에 유효하지 않은 값이 포함되어 있을 경우 발생합니다.
예제
>기본적인 format 사용
아래 예제는 한국어를 사용하여 상대 시간 형식기를 생성하는 방법을 보여줍니다.
// 기본 값을 넣어서 여러분의 로케일로 상대 시간 형식기를 만듭니다.
const rtf = new Intl.RelativeTimeFormat("ko", {
localeMatcher: "best fit", // 다른 값: "lookup"
numeric: "always", // 대른 값: "auto"
style: "long", // 다른 값: "short" or "narrow"
});
// 음수(-1)을 사용한 상대 시간 형식화
rtf.format(-1, "day"); // "1일 전"
// 양수(1)을 사용한 상대 시간 형식화
rtf.format(1, "day"); // "1일 후"
auto 옵션 사용하기
numeric:auto 옵션을 전달하면 1일 전 또는 1일 후 대신 어제 또는 내일 문자열을 생성합니다. 이는 출력에 항상 숫자 값을 사용할 필요를 없게 만듭니다.
// numeric: "auto" 옵션을 넣어서 여러분의 로케일로 상대 시간 형식기를 만듭니다.
const rtf = new Intl.RelativeTimeFormat("ko", { numeric: "auto" });
// 음수(-1)을 사용하여 상대 시간을 형식화합니다.
rtf.format(-1, "day"); // "어제"
// 양수(1)을 사용하여 상대 시간을 형식화합니다.
rtf.format(1, "day"); // "내일"
명세서
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-intl-relativetimeformat-constructor> |
브라우저 호환성
같이 보기
Intl.RelativeTimeFormatIntlIntl.RelativeTimeFormaton v8.dev (2018)