The Intl.ListFormat()
constructor creates Intl.ListFormat
objects that enable language-sensitive list formatting.
Intl.ListFormat() constructor
Try it
Syntax
new Intl.ListFormat() new Intl.ListFormat(locales) new Intl.ListFormat(locales, options)
Parameters
-
locales
Optional -
A string with a BCP 47 language tag, or an array of such strings. For the general form and interpretation of the
locales
argument, see the Intl page. -
options
Optional -
An object with some or all of the following properties:
-
localeMatcher
-
The locale-matching algorithm to use. Possible values:
- "
best fit
" (default) - "
lookup
"
For information about this option, see the Intl page.
- "
-
type
-
Indicates the type of grouping. Possible values:
- "
conjunction
", for "and"-based grouping of the list items: "A, B, and C" (default) - "
disjunction
", for "or"-based grouping of the list items: "A, B, or C" - "
unit
", for grouping the list items as a unit (neither "and"-based nor "or"-based): "A, B, C"
- "
-
style
-
Indicates the grouping style (for example, whether list separators and conjunctions are included). Possible values:
- "
long
": "A, B, and C" (default) - "
short
": "A, B, C" - "
narrow
": "A B C"
- "
-
Examples
Using format
The following example shows how to create a List formatter using the English language.
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: 'long' }) .format(list)); // Motorcycle, Bus and Car console.log(new Intl.ListFormat('en-US', { style: 'long' }) .format(list)); // Motorcycle, Bus, and Car console.log(new Intl.ListFormat('en-GB', { style: 'short', type: 'conjunction' }) .format(list)); // Motorcycle, Bus and Car console.log(new Intl.ListFormat('en-US', { style: 'short', type: 'conjunction' }) .format(list)); // Motorcycle, Bus, & Car console.log(new Intl.ListFormat('en-GB', { style: 'narrow', type: 'conjunction' }) .format(list)); // Motorcycle, Bus, Car console.log(new Intl.ListFormat('en-GB', { style: 'long', type: 'disjunction' }) .format(list)); // Motorcycle, Bus or 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: 'disjunction' }) .format(list)); // Motorcycle, Bus or Car console.log(new Intl.ListFormat('en-US', { style: 'narrow' }) .format(list)); // Motorcycle, Bus, Car console.log(new Intl.ListFormat('en-GB', { style: 'narrow', type: 'unit' }) .format(list)); // Motorcycle Bus Car console.log(new Intl.ListFormat('en-US', { style: 'long' }) .format(["30 degrees", "15 minutes", "50 seconds"])); // 30 degrees, 15 minutes, and 50 seconds console.log(new Intl.ListFormat('en-US', { style: 'narrow' }) .format(["30 degrees", "15 minutes", "50 seconds"])); // 30 degrees, 15 minutes, 50 seconds console.log(new Intl.ListFormat('en-US', { style: 'narrow', type: 'unit' }) .format(["30°", "15′", "50″"])); // 30° 15′ 50″
Specifications
Browser compatibility
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | Deno | Node.js | |
ListFormat |
72
|
79
|
78
|
No
|
60
|
14.1
Only available on macOS Big Sur (11) and above.
|
72
|
72
|
79
|
51
|
14.5
|
11.0
|
1.8
|
13.0.0
12.0.0
Before version 13.0.0, only the locale data for
en-US is available by default. When other locales are specified, the
ListFormat instance silently falls back to
en-US . To make full ICU (locale) data available before version 13, see
Node.js documentation on the --with-intl option and how to provide the data.
|
See also
© 2005–2022 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/ListFormat