Intl.ListFormat
Объект Intl.ListFormat представляет собой конструктор объектов, включающих языка-зависимое форматирование списков.
Интерактивный пример
Синтаксис
new Intl.ListFormat([locales[, options]])
Параметры
locales-
Необязательный параметр. Строка с языковой меткой BCP 47 или массив таких строк. Описание общей формы и интерпретации аргумента
localesсмотрите на странице Intl. options-
Необязательный параметр. Объект с некоторыми или всеми из следующих свойств:
-
localeMatcherИспользуемый алгоритм сопоставления локалей. Возможные значения:"lookup"и"best fit"; по умолчанию используется"best fit". Подробнее см. на страницеIntl. -
typeФормат вывода. Возможные значения:"conjunction"для вывода значений через "и" (используется по умолчанию, прим.A, B и C) или"disjunction"для вывода значений через "или" (прим.A, B или C)."unit"для вывода значений с единицами измерений (прим.5 фунтов, 12 унций). -
styleСтиль форматирования вывода. Возможные значения:"long"(используется по умолчанию, прим.A, B и C);"short"или"narrow"(прим.A, B, C). При использованииnarrow, параметрtypeможет принимать только значениеunit.
-
Описание
Свойства
Intl.ListFormat.prototype(en-US)-
Позволяет добавлять свойства ко всем объектам
Intl.ListFormat
Методы
Intl.ListFormat.supportedLocalesOf()(en-US)-
Возвращает массив, содержащий те из переданных ему локалей, которые поддерживаются без необходимости использовать локаль по умолчанию.
Примеры
Использование format
Пример ниже показывает как создать объект ListFormat с поддержкой форматирования на русском языке и получить отформатированную строку с помощью метода format.
js
const list = ['Motorcycle', 'Bus', 'Car'];
console.log(new Intl.ListFormat('ru-RU', { style: 'long', type: 'conjunction' }).format(list));
// > Motorcycle, Bus и Car
console.log(new Intl.ListFormat('ru-RU', { style: 'short', type: 'disjunction' }).format(list));
// > Motorcycle, Bus или Car
console.log(new Intl.ListFormat('ru-RU', { style: 'narrow', type: 'unit' }).format(list));
// > Motorcycle Bus Car
Использование formatToParts
Пример ниже показывает как получить отформатированные части объекта ListFormat с помощью метода formatToParts.
js
const list = ['Motorcycle', 'Bus', 'Car'];
console.log(new Intl.ListFormat('en-GB', { style: 'long', type: 'conjunction' }).formatToParts(list));
// > [ { "type": "element", "value": "Motorcycle" }, { "type": "literal", "value": ", " }, { "type": "element", "value": "Bus" }, { "type": "literal", "value": ", and " }, { "type": "element", "value": "Car" } ];
Спецификации
| Specification |
|---|
| ECMAScript Internationalization API Specification # listformat-objects |