Intl.ListFormat

Διαβάζετε την αγγλική έκδοση αυτού του περιεχομένου, καθώς δεν διατίθεται ακόμη σε αυτή τη γλώσσα. Βοηθήστε μας να μεταφράσουμε αυτό το άρθρο!

The Intl.ListFormat object is a constructor for 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 formated 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 narrowunit is the only allowed value for the type option.

Description

Properties

Intl.ListFormat.prototype
Allows the addition of properties to all objects.

Methods

Intl.ListFormat.supportedLocalesOf()
Returns an array containing those of the provided locales that are supported without having to fall back to the runtime's default locale.

Intl.ListFormat instances

All Intl.ListFormat instances inherit from Intl.Listformat.prototype

Properties

Intl.ListFormat.prototype.constructor
Specifies the function that creates an object's prototype.

Methods

Intl.ListFormat.prototype.format()
Returns a language-specific formatted string representing the elements of the list.

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

Using formatToParts

The following example shows how to create a List formatter returning formatted parts

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" } ];

Specifications

Specification Status Comment
Intl.ListFormat proposal Stage 3

Browser compatibility

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
ListFormat
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No
format
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No
formatToParts
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No
prototype
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No
resolvedOptions
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No
supportedLocalesOf
Experimental
Chrome Full support 72Edge No support NoFirefox No support NoIE No support NoOpera Full support 60Safari No support NoWebView Android Full support 72Chrome Android Full support 72Firefox Android No support NoOpera Android ? Safari iOS No support NoSamsung Internet Android No support Nonodejs No support No

Legend

Full support  
Full support
No support  
No support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.

See also