Intl.ListFormat.prototype.format()
Базовый уровень Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с апреля 2021 года.
Метод format() экземпляров Intl.ListFormat возвращает строку с зависящим от языка представлением списка.
Попробовать
const vehicles = ["Motorcycle", "Bus", "Car"];
const formatter = new Intl.ListFormat("en", {
style: "long",
type: "conjunction",
});
console.log(formatter.format(vehicles));
// Expected output: "Motorcycle, Bus, and Car"
const formatter2 = new Intl.ListFormat("de", {
style: "short",
type: "disjunction",
});
console.log(formatter2.format(vehicles));
// Expected output: "Motorcycle, Bus oder Car"
const formatter3 = new Intl.ListFormat("en", { style: "narrow", type: "unit" });
console.log(formatter3.format(vehicles));
// Expected output: "Motorcycle Bus Car"
Синтаксис
format(list)
Параметры
-
list - Итерируемый объект, например, `Array`, содержащий строки. Если его опустить, будет выполнено форматирование пустого массива, что может сбить с толку, поэтому рекомендуется всегда явно передавать список.
Возвращаемое значение
Зависящая от языка отформатированная строка, представляющая элементы списка.
Примечание: Большую часть времени форматирование, возвращаемое format(), является согласованным. Однако вывод может различаться в разных реализациях, даже в пределах одной и той же локали — различия в выводе являются намеренными и разрешены спецификацией. Он также может оказаться не тем, что вы ожидаете. Например, строка может использовать неразрывные пробелы или быть окружена двунаправленными управляющими символами. Вы не должны сравнивать результаты format() с жёстко заданными константами.
Примеры
Использование format
Следующий пример показывает, как создать форматировщик списков с использованием английского языка.
const list = ["Motorcycle", "Bus", "Car"];
console.log(
new Intl.ListFormat("en-GB", { style: "long", type: "conjunction" }).format(
list,
),
);
// Motorcycle, Bus and Car
console.log(
new Intl.ListFormat("en-GB", { style: "short", type: "disjunction" }).format(
list,
),
);
// Motorcycle, Bus or Car
console.log(
new Intl.ListFormat("en-GB", { style: "narrow", type: "unit" }).format(list),
);
// Motorcycle Bus Car
Спецификации
| Спецификация |
|---|
| ECMAScript® 2027 Internationalization API Specification # sec-Intl.ListFormat.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 |
72 |
79 |
78 |
60 |
14.1Доступно только на macOS Big Sur (11) и выше. |
72 |
79 |
51 |
14.5 |
11.0 |
72 |
14.5 |
1.0.3 |
1.8 |
12.0.0До версии 13.0.0 по умолчанию доступны только данные локали дляen-US. См. конструктор ListFormat() для получения более подробной информации. |
Смотрите также
© 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/ListFormat/format