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
.
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
.
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 |