Intl.ListFormat.prototype.formatToParts()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.
Intl.ListFormat.prototype.formatToParts()
メソッドは、ロケールを考慮した値のリストの書式化で使用できる様々な部分を表すオブジェクトの配列 (Array
) を返します。
試してみましょう
構文
js
formatToParts(list);
引数
返値
リストから書式された部品を含むコンポーネントの配列 (Array
) です。
解説
Intl.ListFormat.prototype.format()
が、(渡されたロケールとスタイルのオプションに応じて)リストの書式化された文字列を返すのに対し、 formatToParts()
は、書式化されたされた文字列のさまざまなコンポーネントの配列を返します。
結果として得られる配列の各要素には、 type
と value
の 2 つのプロパティがあります。 type
プロパティはリストの値を指す "element
" か、言語的な構成要素を指す "literal
" かのどちらかです。 value
プロパティはトークンの内容を文字列で指定します。
書式化に使用されるロケールとスタイルのオプションは、 Intl.ListFormat
インスタンスを構築する際に与えられたものです。
例
formatToParts の使用
js
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" }
// ]
仕様書
Specification |
---|
ECMAScript Internationalization API Specification # sec-Intl.ListFormat.prototype.formatToParts |
ブラウザーの互換性
BCD tables only load in the browser