Intl.Locale.prototype.caseFirst

Intl.Locale.prototype.caseFirst プロパティは、ロケールの照合規則に大文字・小文字を考慮するかどうかを返すアクセサプロパティです。

解説

ロケールの照合規則は、そのロケールでの文字列の並び順を決定するために用いられます。ロケールによっては、照合処理で文字の大文字・小文字を使用する場合があります。この追加ルールは、 LocalecaseFirst プロパティで表現することができます。

caseFirst プロパティには下記の表にある通り、3種類の値を指定することができます。

caseFirst の値

説明
upper 大文字は小文字よりも前に並べられます。
lower 小文字は大文字よりも前に並べられます。
false 大文字・小文字で特別な並べ替えはしません。

ロケール文字列による caseFirst 値の設定

Unicode ロケール文字列仕様書では、 caseFirst が表す値は kf キーに対応します。 kf はロケール文字列の「拡張子サブタグ」として扱われます。これらのサブタグは、ロケールに関するデータを追加するもので、 -u 拡張を使用してロケール識別子に追加されます。つまり、 caseFirst の値は、 Locale コンストラクターに渡される初期のロケール識別子文字列に追加することができます。 caseFirst の値を追加するには、まず文字列に -u 拡張キーを追加します。次に、照合順序の型を追加することを示すために -kf 拡張キーを追加します。最後に、 caseFirst の値を文字列に追加します。

let caseFirstStr = new Intl.Locale("fr-Latn-FR-u-kf-upper");
console.log(caseFirstStr.caseFirst); // "upper" と表示

構成オブジェクト引数による caseFirst の値の設定

Intl.Locale コンストラクターには、オプションで構成オブジェクトの引数があり、拡張の種類を渡すために使用することができます。構成オブジェクトの caseFirst プロパティを望みの caseFirst の値に設定し、コンストラクターに渡します。

let caseFirstObj= new Intl.Locale("en-Latn-US", {caseFirst: "lower"});
console.log(us12hour.caseFirst); // "lower" と表示

仕様書

仕様書
ECMAScript Internationalization API (ECMA-402)

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
caseFirstChrome 完全対応 74Edge 完全対応 79Firefox 完全対応 75IE 未対応 なしOpera 完全対応 62Safari 完全対応 14WebView Android 完全対応 74Chrome Android 完全対応 74Firefox Android 未対応 なしOpera Android 完全対応 53Safari iOS 完全対応 14Samsung Internet Android 完全対応 11.0nodejs 完全対応 12.0.0
補足
完全対応 12.0.0
補足
補足 Before version 13.0.0, only the locale data for en-US is available by default. See the Locale() constructor for more details.

凡例

完全対応  
完全対応
未対応  
未対応
実装ノートを参照してください。
実装ノートを参照してください。

関連情報