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
Спецификации
Совместимость с браузерами
| Настольные | Мобильные | Сервер | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 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.DurationIntl.DurationFormatTemporal.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