Intl.ListFormat() constructor

The Intl.ListFormat() constructor creates Intl.ListFormat objects that enable language-sensitive list formatting.

Syntax

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 are "lookup" and "best fit"; the default is "best fit". For information about this option, see the Intl page.
type
The format of output message. Possible values are "conjunction" that stands for "and"-based lists (default, e.g., "A, B, and C"), or "disjunction" that stands for "or"-based lists (e.g., "A, B, or C"). "unit" stands for lists of values with units (e.g., "5 pounds, 12 ounces").
style
The length of the formatted message. Possible values are: "long" (default, e.g., "A, B, and C"); "short" (e.g., "A, B, C"), or "narrow" (e.g., "A B C"). When style is "short" or "narrow", "unit" is the only allowed value for the type option.

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: '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

Specifications

Specification
Intl.ListFormat
The definition of 'ListFormat()' in that specification.

Browser compatibility

BCD tables only load in the browser

See also