기간을 짧은 형식 또는 긴 형식으로 표시하는 방법

스타일 옵션을 사용하여 기간이 약어, 전체 단어 또는 간결한 기호로 표시되는 방식을 제어할 수 있습니다

소개

무언가가 얼마나 오래 걸리는지 표시할 때, 형식에 따라 다양한 공간을 차지합니다. 1시간 30분의 운동 시간은 가용 공간과 명확성 요구에 따라 "1시간 30분", "1시간 30분", 또는 "1h 30m"으로 표시될 수 있습니다. 각 형식은 가독성과 수평 공간 사이에서 절충합니다.

다양한 상황에서는 다양한 형식 선택이 필요합니다. 동영상 플레이어 컨트롤 바에서 재생 시간을 표시할 때는 "1h 30m"과 같은 간결한 텍스트가 유용합니다. 운동 요약 화면에서 세션 길이를 설명할 때는 "1시간 30분"과 같은 명확한 텍스트가 필요합니다. 여러 타이머 값을 표시하는 모바일 대시보드에서는 화면에 정보를 맞추기 위해 가능한 가장 간결한 형식을 사용합니다.

JavaScript의 Intl.DurationFormat은 이러한 선택을 제어하기 위한 style 옵션을 제공합니다. 철자가 완전히 표기된 긴 표시, 표준 약어를 사용한 짧은 표시, 또는 가능한 가장 간결한 표현을 사용하는 좁은 표시 중에서 선택할 수 있습니다. 이 옵션을 통해 사용자에게 표시되는 기간의 형식을 정확하게 제어할 수 있습니다.

style 옵션이 제어하는 것

텍스트 기반 형식에서 Intl.DurationFormatstyle 옵션은 "long", "short", "narrow" 세 가지 값을 허용합니다. 각 값은 기간 출력에 대해 다른 수준의 상세함을 제공합니다.

long 값은 "1시간 30분"과 같이 완전한 단위 이름을 철자로 표기합니다. short 값은 "1시간 30분"과 같은 표준 약어를 사용합니다. narrow 값은 "1h 30m"과 같이 가장 간결한 표현을 생성하며, 종종 공백을 제거하고 최소한의 기호를 사용합니다.

const duration = { hours: 1, minutes: 30 };

const longFormatter = new Intl.DurationFormat("en-US", {
  style: "long"
});

console.log(longFormatter.format(duration));
// 출력: "1 hour and 30 minutes"

const shortFormatter = new Intl.DurationFormat("en-US", {
  style: "short"
});

console.log(shortFormatter.format(duration));
// 출력: "1 hr and 30 min"

const narrowFormatter = new Intl.DurationFormat("en-US", {
  style: "narrow"
});

console.log(narrowFormatter.format(duration));
// 출력: "1h 30m"

style 옵션을 생략하면 기본값은 "short"입니다. 이는 다른 표시 스타일을 명시적으로 요청하지 않는 한 기간 형식이 표준 약어를 사용한다는 의미입니다.

긴 스타일로 기간 형식 지정하기

긴 스타일은 단위 이름을 완전히 표기합니다. 이 형식은 추가적인 가로 공간을 사용하는 대신 최대한의 명확성을 제공합니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "long"
});

const duration = { hours: 2, minutes: 30 };

console.log(formatter.format(duration));
// 출력: "2 hours and 30 minutes"

포맷터는 단수형과 복수형을 자동으로 처리합니다. 1시간은 단수형 "hour"를 사용하고 여러 시간은 복수형 "hours"를 사용합니다. 어떤 형태를 사용할지 수동으로 결정할 필요가 없습니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "long"
});

console.log(formatter.format({ hours: 1, minutes: 30 }));
// 출력: "1 hour and 30 minutes"

console.log(formatter.format({ hours: 2, minutes: 1 }));
// 출력: "2 hours and 1 minute"

기간에 얼마나 많은 단위가 나타나든 각 단위 유형은 완전히 표기됩니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "long"
});

console.log(formatter.format({ hours: 2, minutes: 30, seconds: 45 }));
// 출력: "2 hours, 30 minutes and 45 seconds"

console.log(formatter.format({ minutes: 5, seconds: 30 }));
// 출력: "5 minutes and 30 seconds"

console.log(formatter.format({ hours: 1, minutes: 0, seconds: 15 }));
// 출력: "1 hour, 0 minutes and 15 seconds"

포맷터는 단위 사이에 적절한 접속사를 추가합니다. 영어에서는 쉼표와 "and"를 사용하여 단위를 구분합니다. 접속사는 목록의 마지막 단위 앞에 나타납니다.

긴 스타일은 사용자가 약어를 해석할 필요 없이 기간을 즉시 명확하게 만듭니다. 시간 약어에 익숙하지 않은 사용자는 완전히 표기된 단위를 더 쉽게 이해할 수 있습니다.

짧은 스타일로 기간 형식 지정하기

짧은 스타일은 대부분의 사람들이 인식하는 표준 약어를 사용합니다. 이 형식은 가독성과 공간 효율성의 균형을 맞춥니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "short"
});

const duration = { hours: 2, minutes: 30 };

console.log(formatter.format(duration));
// 출력: "2 hr and 30 min"

포맷터는 일반적으로 인식되는 약어를 사용합니다. 시간은 "hr", 분은 "min", 초는 "sec"가 됩니다. 이러한 약어는 문자 수를 줄이면서도 가독성을 유지합니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "short"
});

console.log(formatter.format({ hours: 1, minutes: 46, seconds: 40 }));
// 출력: "1 hr, 46 min and 40 sec"

console.log(formatter.format({ minutes: 5, seconds: 30 }));
// 출력: "5 min and 30 sec"

console.log(formatter.format({ hours: 3, minutes: 15 }));
// 출력: "3 hr and 15 min"

짧은 스타일이 기본 동작입니다. style 옵션을 생략하면 포맷터는 자동으로 짧은 스타일을 사용합니다.

const formatter = new Intl.DurationFormat("en-US");

console.log(formatter.format({ hours: 2, minutes: 30 }));
// 출력: "2 hr and 30 min"

이 기본값은 스타일 옵션을 명시적으로 지정하지 않고도 표준 약식 기간을 원할 때 짧은 스타일을 편리하게 사용할 수 있게 합니다.

다양한 기간 유형을 짧은 스타일로 형식화하여 표준 약어를 확인할 수 있습니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "short"
});

console.log(formatter.format({ days: 2, hours: 5 }));
// 출력: "2 days and 5 hr"

console.log(formatter.format({ weeks: 1, days: 3 }));
// 출력: "1 wk and 3 days"

console.log(formatter.format({ hours: 1, minutes: 30, seconds: 45, milliseconds: 500 }));
// 출력: "1 hr, 30 min, 45 sec and 500 ms"

각 단위 유형은 표준 약어를 사용합니다. 일(day)은 "days"로 유지되고, 주(week)는 "wk", 밀리초는 "ms"를 사용합니다. 이러한 약어는 널리 인식되며 대부분의 상황에서 잘 작동합니다.

좁은 스타일로 기간 형식 지정하기

좁은 스타일은 가능한 가장 간결한 표현을 제공합니다. 이 형식은 공백을 제거하고 최소한의 기호를 사용하여 모든 문자를 절약합니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "narrow"
});

const duration = { hours: 2, minutes: 30 };

console.log(formatter.format(duration));
// 출력: "2h 30m"

포맷터는 한 글자 약어와 최소한의 간격을 사용합니다. 시간은 "h", 분은 "m", 초는 "s"로 표시됩니다. 출력은 짧은 스타일이나 긴 스타일보다 훨씬 더 간결합니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "narrow"
});

console.log(formatter.format({ hours: 1, minutes: 46, seconds: 40 }));
// 출력: "1h 46m 40s"

console.log(formatter.format({ minutes: 5, seconds: 30 }));
// 출력: "5m 30s"

console.log(formatter.format({ hours: 3, minutes: 15 }));
// 출력: "3h 15m"

다양한 단위는 표준 규칙에 따라 다른 좁은 표현을 생성합니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "narrow"
});

console.log(formatter.format({ days: 2, hours: 5 }));
// 출력: "2d 5h"

console.log(formatter.format({ weeks: 1, days: 3 }));
// 출력: "1w 3d"

console.log(formatter.format({ hours: 1, minutes: 30, seconds: 45, milliseconds: 500 }));
// 출력: "1h 30m 45s 500ms"

좁은 스타일은 공간이 극도로 제한되어 있고 사용자가 시간 측정 컨텍스트에 익숙한 경우에 가장 적합합니다. 압축된 형식은 사용자가 명시적인 구분이나 설명 없이도 단위를 해석할 수 있다고 가정합니다.

긴, 짧은, 좁은 스타일 비교하기

세 가지 스타일 옵션 간의 차이점은 동일한 기간을 각 옵션으로 형식화할 때 명확해집니다.

const longFormatter = new Intl.DurationFormat("en-US", {
  style: "long"
});

const shortFormatter = new Intl.DurationFormat("en-US", {
  style: "short"
});

const narrowFormatter = new Intl.DurationFormat("en-US", {
  style: "narrow"
});

const duration = { hours: 1, minutes: 30, seconds: 45 };

console.log("Long:   " + longFormatter.format(duration));
console.log("Short:  " + shortFormatter.format(duration));
console.log("Narrow: " + narrowFormatter.format(duration));

// 출력:
// Long:   1 hour, 30 minutes and 45 seconds
// Short:  1 hr, 30 min and 45 sec
// Long:   1h 30m 45s

긴 스타일은 완전한 단어와 명시적인 접속사를 사용합니다. 짧은 스타일은 접속사가 있는 표준 약어를 사용합니다. 좁은 스타일은 최소한의 간격으로 한 글자를 사용합니다. 이러한 진행은 명확성과 공간 효율성 사이의 절충을 보여줍니다.

다양한 기간을 비교하여 각 스타일이 다양한 시간 범위를 어떻게 처리하는지 확인할 수 있습니다.

const durations = [
  { hours: 2, minutes: 15 },
  { minutes: 5, seconds: 30 },
  { hours: 1, minutes: 0, seconds: 10 },
  { days: 1, hours: 3, minutes: 45 }
];

durations.forEach(duration => {
  const long = new Intl.DurationFormat("en-US", {
    style: "long"
  }).format(duration);

  const short = new Intl.DurationFormat("en-US", {
    style: "short"
  }).format(duration);

  const narrow = new Intl.DurationFormat("en-US", {
    style: "narrow"
  }).format(duration);

  console.log("Duration:");
  console.log("  Long:   " + long);
  console.log("  Short:  " + short);
  console.log("  Narrow: " + narrow);
  console.log("");
});

// 출력:
// Duration:
//   Long:   2 hours and 15 minutes
//   Short:  2 hr and 15 min
//   Narrow: 2h 15m
//
// Duration:
//   Long:   5 minutes and 30 seconds
//   Short:  5 min and 30 sec
//   Narrow: 5m 30s
//
// Duration:
//   Long:   1 hour, 0 minutes and 10 seconds
//   Short:  1 hr, 0 min and 10 sec
//   Narrow: 1h 0m 10s
//
// Duration:
//   Long:   1 day, 3 hours and 45 minutes
//   Short:  1 day, 3 hr and 45 min
//   Narrow: 1d 3h 45m

여러 기간에 걸쳐 문자 수 차이가 상당히 커집니다. 많은 기간을 보여주는 표나 목록에서 좁은 스타일은 긴 스타일에 비해 상당한 수평 공간을 절약합니다.

언어별로 기간 스타일이 어떻게 다른지

세 가지 스타일 옵션 모두 지정한 로케일에 맞게 조정됩니다. 언어마다 다른 약어, 단위명, 접속사 및 간격 규칙을 사용합니다.

const locales = ["en-US", "de-DE", "fr-FR", "ja-JP"];

const duration = { hours: 2, minutes: 30 };

locales.forEach(locale => {
  const longFormatter = new Intl.DurationFormat(locale, {
    style: "long"
  });

  const shortFormatter = new Intl.DurationFormat(locale, {
    style: "short"
  });

  console.log(locale + ":");
  console.log("  Long:  " + longFormatter.format(duration));
  console.log("  Short: " + shortFormatter.format(duration));
});

// Output:
// en-US:
//   Long:  2 hours and 30 minutes
//   Short: 2 hr and 30 min
// de-DE:
//   Long:  2 Stunden und 30 Minuten
//   Short: 2 Std. und 30 Min.
// fr-FR:
//   Long:  2 heures et 30 minutes
//   Short: 2 h et 30 min
// ja-JP:
//   Long:  2時間30分
//   Short: 2 時間 30 分

긴(Long) 스타일은 로케일마다 크게 다릅니다. 각 언어마다 시간 단위를 표현하는 고유한 단어가 있기 때문입니다. 독일어는 시간에 "Stunden"을 사용하고, 프랑스어는 "heures"를, 일본어는 "時間"을 사용합니다. 포맷터는 문법적 변형을 자동으로 처리합니다.

짧은(Short) 스타일도 로케일 규칙에 맞게 조정됩니다. 독일어는 시간에 "Std."를 사용하고, 프랑스어는 "h"를, 일본어는 숫자와 단위 문자 사이에 공백을 추가합니다. 이러한 로케일별 약어는 각 문화권에서 기간을 축약형으로 표기하는 방식을 반영합니다.

포맷터는 언어 규칙에 따라 접속사를 처리합니다. 영어는 "and"를 사용하고, 독일어는 "und"를, 프랑스어는 "et"를 사용하며, 일본어는 접속사를 완전히 생략합니다. 각 로케일은 해당 언어에 맞는 자연스러운 출력을 생성합니다.

const locales = ["en-US", "es-ES", "pt-BR"];

const duration = { hours: 1, minutes: 30, seconds: 45 };

locales.forEach(locale => {
  const narrowFormatter = new Intl.DurationFormat(locale, {
    style: "narrow"
  });

  console.log(locale + ": " + narrowFormatter.format(duration));
});

// Output:
// en-US: 1h 30m 45s
// es-ES: 1h 30min 45s
// pt-BR: 1h 30min 45s

좁은(Narrow) 스타일은 로케일마다 약간의 차이를 보입니다. 영어는 "h", "m", "s"와 같은 단일 문자를 사용합니다. 스페인어와 포르투갈어는 분을 나타낼 때 "m" 대신 "min"을 사용합니다. 이러한 차이는 간결한 시간 표기법에 대한 로케일별 규칙을 반영합니다.

긴 스타일을 사용해야 하는 경우

긴 스타일은 공간 효율성보다 명확성과 접근성이 더 중요할 때 가장 효과적입니다. 이 선택은 해석이 필요 없이 기간을 즉시 이해할 수 있게 합니다.

접근성 중심 인터페이스는 스크린 리더가 철자가 풀어진 단어를 더 자연스럽게 발음하기 때문에 긴 스타일의 혜택을 받습니다. 스크린 리더가 "2시간 30분"을 발표하는 것이 "2시간 30분"보다 더 자연스럽게 들립니다. 후자는 어색하게 읽히거나 특별한 발음 규칙이 필요할 수 있습니다.

교육 콘텐츠는 학습자가 시간 약어에 익숙하지 않을 수 있기 때문에 긴 스타일의 혜택을 받습니다. 기간을 설명하는 교육 자료는 혼란을 피하기 위해 단위를 철자로 표기해야 합니다.

운동 요약 및 세션 보고서는 명확하고 전문적인 톤을 유지하기 위해 긴 스타일을 사용합니다. 완료된 운동 시간을 보여주는 피트니스 앱은 "1시간 15분"이 "1시간 15분"보다 더 잘 읽힙니다.

공식 보고서 및 문서는 일관된 작성 표준을 유지하기 위해 긴 스타일을 사용합니다. 비즈니스 보고서, 의료 기록 및 공식 문서는 일반적으로 시간 기간을 약어로 표시하지 않고 철자로 표기합니다.

국제 청중은 사용자가 언어를 배우고 있을 때 긴 스타일의 혜택을 받습니다. "시간"과 "분"과 같이 철자가 풀어진 단위 이름은 비원어민 화자에게 약어보다 이해하기 쉽습니다.

function formatWorkoutSummary(duration, locale) {
  const formatter = new Intl.DurationFormat(locale, {
    style: "long"
  });

  return formatter.format(duration);
}

const workout = { hours: 1, minutes: 15 };

console.log("Workout duration: " + formatWorkoutSummary(workout, "en-US"));
// Output: "Workout duration: 1 hour and 15 minutes"

긴 스타일은 간결함보다 이해를 우선시합니다. 사용자가 모호함이나 해석 노력 없이 기간을 파악해야 할 때마다 사용하세요.

짧은 스타일을 사용해야 하는 경우

짧은 스타일은 공간이 중요하지만 약어가 널리 이해되는 상황에서 가장 효과적입니다. 이는 일반적인 용도의 애플리케이션에서 가장 흔한 선택입니다.

모바일 인터페이스는 화면 너비가 제한되어 있기 때문에 짧은 스타일의 이점이 있습니다. 여러 타이머를 표시하는 대시보드 카드는 화면에 정보를 맞추기 위해 간결한 기간 표시가 필요합니다. "2 hours and 30 minutes" 대신 "2 hr and 30 min"을 사용하면 기간당 11자를 절약할 수 있으며, 여러 값에 걸쳐 누적됩니다.

비디오 플레이어 컨트롤은 인터페이스를 복잡하게 만들지 않고 재생 시간을 표시하기 위해 짧은 스타일을 사용합니다. 컨트롤 바에 "1 hour and 46 minutes" 대신 "1 hr and 46 min"을 표시하는 것이 더 간결하면서도 명확합니다.

열에 기간을 표시하는 데이터 테이블은 일관된 너비가 필요합니다. "hr", "min", "sec"와 같은 짧은 약어는 열 너비를 관리하기 쉽게 유지합니다. "hours", "minutes", "seconds"와 같은 긴 단위는 불필요하게 열을 넓힙니다.

타이머 애플리케이션은 사용자가 시간 약어에 익숙하기 때문에 짧은 스타일을 사용합니다. "5 min and 30 sec"를 표시하는 카운트다운 타이머는 명확성과 디스플레이 공간의 효율적 사용 사이의 균형을 유지합니다.

항공편 예약 인터페이스는 이동 시간을 표시하기 위해 짧은 스타일을 사용합니다. 항공편 검색 결과에 "8 hr and 15 min"을 표시하는 것은 "8h 15m"보다 명확하고 "8 hours and 15 minutes"보다 더 간결합니다.

function formatFlightDuration(duration, locale) {
  const formatter = new Intl.DurationFormat(locale, {
    style: "short"
  });

  return formatter.format(duration);
}

const flight = { hours: 8, minutes: 15 };

console.log(formatFlightDuration(flight, "en-US"));
// Output: "8 hr and 15 min"

짧은 스타일은 명확성과 효율성 사이의 균형을 유지합니다. 대부분의 사용자는 hr, min, sec와 같은 표준 약어를 혼동 없이 인식합니다.

좁은 스타일을 사용해야 하는 경우

좁은 스타일은 모든 문자가 중요하고 사용자가 시간 표기법에 매우 익숙한 극도로 공간이 제한된 상황에서 가장 효과적입니다.

단일 지표를 표시하는 컴팩트 위젯은 디스플레이 크기가 최소일 때 좁은 스타일을 사용할 수 있습니다. 큰 텍스트로 "5m 30s"를 표시하는 타이머 위젯은 "5분 30초"보다 더 적합합니다.

정보가 밀집된 데이터 시각화는 좁은 스타일의 이점을 얻습니다. 차트 레이블, 그래프 주석 및 데이터 오버레이는 기본 시각적 콘텐츠를 가리지 않도록 최소한의 텍스트가 필요합니다. "2시간 30분" 대신 "2h 30m"을 사용하면 문자를 절약하면서도 컨텍스트를 이해하는 사용자에게 읽기 쉽게 유지됩니다.

제한된 공간이 있는 모바일 홈 화면 위젯은 정보 밀도를 최대화하기 위해 좁은 스타일을 사용합니다. 작은 타일에 여러 최근 세션을 표시하는 운동 추적 위젯은 컴팩트한 기간 표기법의 이점을 얻습니다.

스마트워치 인터페이스는 화면 공간이 극도로 제한되어 있기 때문에 좁은 스타일을 사용합니다. 작은 원형 화면에 "1h 15m"을 표시하는 것이 더 긴 형식보다 더 효과적입니다.

기간이 있는 많은 항목을 표시하는 목록 보기는 각 행을 컴팩트하게 유지하기 위해 좁은 스타일을 사용할 수 있습니다. 트랙 기간을 표시하는 음악 재생 목록, 실행 시간을 표시하는 비디오 목록 또는 운동당 기간을 표시하는 운동 목록은 모두 최소한의 형식 지정의 이점을 얻습니다.

function formatVideoPlaylist(videos, locale) {
  const formatter = new Intl.DurationFormat(locale, {
    style: "narrow"
  });

  return videos.map(video => ({
    title: video.title,
    duration: formatter.format(video.duration)
  }));
}

const playlist = [
  { title: "Introduction", duration: { minutes: 2, seconds: 30 } },
  { title: "Getting Started", duration: { minutes: 5, seconds: 15 } },
  { title: "Advanced Topics", duration: { hours: 1, minutes: 10 } }
];

console.log(formatVideoPlaylist(playlist, "en-US"));
// Output:
// [
//   { title: "Introduction", duration: "2m 30s" },
//   { title: "Getting Started", duration: "5m 15s" },
//   { title: "Advanced Topics", duration: "1h 10m" }
// ]

좁은 스타일은 사용자가 시간 표기법에 익숙하고 도움 없이 단위를 해석할 수 있다고 가정합니다. 이 옵션은 최대 공간 효율성을 위해 명확성을 교환합니다.

스타일을 다른 형식 옵션과 결합하기

'style' 옵션은 모든 다른 기간 형식 옵션과 함께 작동합니다. 표시 스타일을 선택하면서 어떤 단위가 나타날지 제어할 수 있습니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "long",
  hours: "numeric",
  minutes: "2-digit",
  seconds: "2-digit"
});

console.log(formatter.format({ hours: 1, minutes: 5, seconds: 3 }));
// Output: "1:05:03"

이 조합은 시간을 긴 스타일로 표시하지만 분과 초에는 0으로 채워진 숫자 형식을 사용합니다. 결과는 텍스트와 숫자를 혼합한 하이브리드 형식입니다.

일관된 스타일을 사용하면서 특정 단위만 형식화할 수 있습니다.

const formatter = new Intl.DurationFormat("en-US", {
  style: "short",
  hours: "numeric",
  minutes: "numeric"
});

console.log(formatter.format({ hours: 2, minutes: 30, seconds: 45 }));
// Output: "2 hr and 30 min"

기간 객체에 초가 포함되어 있더라도 포맷터는 시간과 분만 표시합니다. 이를 통해 출력에 나타나는 단위를 제어할 수 있습니다.

다양한 단위 스타일을 혼합하여 사용자 정의 형식을 만들 수 있습니다.

const formatter = new Intl.DurationFormat("en-US", {
  hours: "long",
  minutes: "short",
  seconds: "narrow"
});

console.log(formatter.format({ hours: 1, minutes: 30, seconds: 45 }));
// Output: "1 hour, 30 min, 45s"

이는 각 단위가 다른 상세 수준을 사용하는 혼합 형식을 생성합니다. 일반적이지는 않지만, 이러한 유연성을 통해 필요할 때 특수한 형식을 만들 수 있습니다.

기억해야 할 사항

'style' 옵션은 'Intl.DurationFormat'으로 형식을 지정할 때 기간이 표시되는 방식을 제어합니다. "2 hours and 30 minutes"와 같이 철자가 완전히 표기된 단위를 위해 '"long"'으로 설정하거나, "2 hr and 30 min"과 같은 표준 약어를 위해 '"short"'로, 또는 "2h 30m"과 같은 간결한 형식을 위해 '"narrow"'로 설정합니다. 생략하면 옵션은 기본값으로 '"short"'로 설정됩니다.

공간보다 명확성과 접근성이 더 중요하거나 사용자가 시간 약어에 익숙하지 않을 때는 긴 스타일을 사용하세요. 공간이 중요하고 사용자가 표준 약어를 이해하는 일반적인 애플리케이션에는 짧은 스타일을 사용하세요. 좁은 스타일은 사용자가 시간 표기법에 매우 익숙한 극도로 공간이 제한된 상황에서만 사용하세요.

포맷터는 다양한 단위 이름, 약어, 접속사, 간격 규칙 및 복수형을 포함한 로케일별 변형을 자동으로 처리합니다. 'style'을 다른 형식 옵션과 결합하여 어떤 단위가 나타나고 어떻게 표시되는지 제어할 수 있습니다.