Spec-Zone.ru › JavaScript

Intl.DateTimeFormat.prototype.format()

Базовый уровень Широко доступен

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в версиях браузеров. Она доступна во всех браузерах с сентября 2017 года.

Метод format() объектов Intl.DateTimeFormat форматирует дату в соответствии с локалью и параметрами форматирования этого объекта Intl.DateTimeFormat.

Попробуйте

const options = {
  weekday: "long",
  year: "numeric",
  month: "long",
  day: "numeric",
};
const date = new Date(2012, 5);

const dateTimeFormat1 = new Intl.DateTimeFormat("sr-RS", options);
console.log(dateTimeFormat1.format(date));
// Expected output: "петак, 1. јун 2012."

const dateTimeFormat2 = new Intl.DateTimeFormat("en-GB", options);
console.log(dateTimeFormat2.format(date));
// Expected output: "Friday, 1 June 2012"

const dateTimeFormat3 = new Intl.DateTimeFormat("en-US", options);
console.log(dateTimeFormat3.format(date));
// Expected output: "Friday, June 1, 2012"

Синтаксис

format(date)

Параметры

date

Форматируемая дата. Может быть объектом Date или Temporal.PlainDateTime. Дополнительно может быть объектом Temporal.PlainTime, Temporal.PlainDate, Temporal.PlainYearMonth или Temporal.PlainMonthDay, если объект DateTimeFormat был сконфигурирован для вывода хотя бы одной соответствующей части даты.

Примечание: Объект Temporal.ZonedDateTime всегда будет вызывать TypeError; вместо этого используйте Temporal.ZonedDateTime.prototype.toLocaleString() или преобразуйте его в объект Temporal.PlainDateTime.

Если этот параметр опущен, форматируется текущая дата (возвращаемая Date.now()), что может вызвать некоторую путаницу, поэтому рекомендуется всегда явно передавать дату.

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

Строка, представляющая указанную date, отформатированную в соответствии с локалью и параметрами форматирования этого объекта Intl.DateTimeFormat.

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

Примеры

Использование format

Используйте функцию-геттер format для форматирования одной даты, здесь для Сербии:

const options = {
  weekday: "long",
  year: "numeric",
  month: "long",
  day: "numeric",
};
const dateTimeFormat = new Intl.DateTimeFormat("sr-RS", options);
console.log(dateTimeFormat.format(new Date()));
// "недеља, 7. април 2013."

Использование format с map

Используйте функцию-геттер format для форматирования всех дат в массиве. Обратите внимание, что функция привязана к Intl.DateTimeFormat, из которого она была получена, поэтому ее можно передать непосредственно в Array.prototype.map().

const a = [new Date(2012, 8), new Date(2012, 11), new Date(2012, 3)];
const options = { year: "numeric", month: "long" };
const dateTimeFormat = new Intl.DateTimeFormat("pt-BR", options);
const formatted = a.map(dateTimeFormat.format);
console.log(formatted.join("; "));
// "setembro de 2012; dezembro de 2012; abril de 2012"

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

Спецификация
ECMAScript® 2027 Internationalization API Specification
# sec-intl.datetimeformat.prototype.format

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

Настольные компьютеры Мобильные устройства Сервер
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
format
24
12
29
15
10
25
25
56
14
10
1.5
4.4
10
1.0.0
1.8
0.12.0До версии 13.0.0 по умолчанию доступны только данные локали для en-US. Дополнительные сведения см. в конструкторе DateTimeFormat().

См. также

  • Intl.DateTimeFormat

© 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/Intl/DateTimeFormat/format

Spec-Zone.ru

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