Web/JavaScript/Reference/Global objects/Intl/ListFormat/formatToParts
The Intl.ListFormat.prototype.formatToParts() method returns an Array of objects representing the different components that can be used to format a list of values in a locale-aware fashion.
Syntax
Intl.ListFormat.prototype.formatToParts(list)
Parameters
list- An
Arrayof values to be formatted according to a locale.
Return value
An Array of components which contains the formatted parts from the list.
Description
Whereas Intl.ListFormat.prototype.format() returns a string being the formated version of the list (according to the given locale and style options), formatToParts() returns an array of the different components of the formated string.
Each element of the resulting array has two properties: type and value. The type property may be either "element", which refers to a value from the list, or "literal" which refers to a linguistic construct. The value property gives the content, as a string, of the token.
The locale and style options used for formatting are given when constructing the Intl.ListFormat instance.
Examples
Using formatToParts
const fruits = ['Apple', 'Orange', 'Pineapple'];
const myListFormat = new Intl.ListFormat('en-GB', { style: 'long', type: 'conjunction' });
console.table(myListFormat.formatToParts(fruits));
// [
// { "type": "element", "value": "Apple" },
// { "type": "literal", "value": ", " },
// { "type": "element", "value": "Orange" },
// { "type": "literal", "value": ", and " },
// { "type": "element", "value": "Pineapple" }
// ]
Specifications
| Specification |
|---|
| Intl.ListFormatThe definition of 'formatToParts()' in that specification. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Chrome
Full support 72 |
Edge
No support No |
Firefox
Full support 78 |
IE
No support No |
Opera
Full support 60 |
Safari
No support No |
WebView Android
Full support 72 |
Chrome Android
Full support 72 |
Firefox Android
No support No |
Opera Android
Full support 51 |
Safari iOS
No support No |
Samsung Internet Android
No support No |
nodejs Full support 12.0.0 Full support 12.0.0 Notes' Before version 13.0.0, only the locale data for |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
- See implementation notes.'
- See implementation notes.
See also
Intl.ListFormatIntl.ListFormat.prototype.format()Intl.RelativeTimeFormat.prototype.formatToParts()Intl.NumberFormat.prototype.formatToParts()Intl.DateTimeFormat.prototype.formatToParts()
Intl .List Format .prototype .formatToParts() by Mozilla Contributors is licensed under CC-BY-SA 2.5.