Spec-Zone.ru › JavaScript

Temporal.Duration.prototype.toLocaleString()

Базовый Ограниченная доступность

Эта функция не является базовой, поскольку она не работает в некоторых наиболее широко используемых браузерах.

Метод toLocaleString() экземпляров Temporal.Duration возвращает строку с зависящим от языка представлением этой длительности. В реализациях с поддержкой Intl.DurationFormat API этот метод делегирует Intl.DurationFormat.

Каждый раз, когда вызывается toLocaleString, ему приходится выполнять поиск в большой базе данных строк локализации, что потенциально неэффективно. Если метод вызывается многократно с одними и теми же аргументами, лучше создать объект Intl.DurationFormat и использовать его метод format(), поскольку объект DurationFormat запоминает переданные ему аргументы и может решить кэшировать часть базы данных, чтобы будущие вызовы format могли искать строки локализации в более ограниченном контексте.

Синтаксис

toLocaleString()
toLocaleString(locales)
toLocaleString(locales, options)

Параметры

Параметры locales и options настраивают поведение функции и позволяют приложениям указывать язык, чьи соглашения форматирования должны использоваться.

В реализациях, поддерживающих Intl.DurationFormat API, эти параметры точно соответствуют параметрам конструктора Intl.DurationFormat(). Реализации без поддержки Intl.DurationFormat возвращают ту же строку, что и toString(), игнорируя оба параметра.

locales Необязательный
Строка с тегом языка BCP 47 или массив таких строк. Соответствует параметру locales конструктора Intl.DurationFormat().
options Необязательный
Объект, настраивающий формат вывода. Соответствует параметру options конструктора Intl.DurationFormat().

См. конструктор Intl.DurationFormat() для получения подробной информации об этих параметрах и способах их использования.

Возвращаемое значение

Строка, представляющая заданную длительность в соответствии с соглашениями, специфичными для языка.

В реализациях с Intl.DurationFormat это эквивалентно new Intl.DurationFormat(locales, options).format(duration).

Примечание: В большинстве случаев форматирование, возвращаемое toLocaleString(), является согласованным. Однако вывод может различаться между реализациями, даже в пределах одной и той же локали — вариации вывода являются частью дизайна и разрешены спецификацией. Это также может быть не то, что вы ожидаете. Например, строка может использовать неразрывные пробелы или быть окружена двунаправленными управляющими символами. Вы не должны сравнивать результаты toLocaleString() с жестко закодированными константами.

Примеры

Использование toLocaleString()

Базовое использование этого метода без указания locale возвращает отформатированную строку в локали по умолчанию и с опциями по умолчанию.

const duration = Temporal.Duration.from({ hours: 1, minutes: 30, seconds: 15 });

console.log(duration.toLocaleString()); // 1 hr, 30 min, 15 sec

Спецификации

Спецификация
Temporal
# sec-temporal.duration.prototype.tolocalestring

Совместимость с браузерами

Настольные Мобильные Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
toLocaleString
144
144
139
128
preview
144
139
95
No
No
144
No
1.4.0
2.7
26.0.0

См. также

  • Temporal.Duration
  • Intl.DurationFormat
  • Temporal.Duration.prototype.toJSON()
  • Temporal.Duration.prototype.toString()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal/Duration/toLocaleString

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API