Intl.getCanonicalLocales()
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2017年10月以降、すべてのブラウザーで利用可能です。
Intl.getCanonicalLocales() メソッドは、正規のロケール名を含む配列を返します。重複は省略され、要素は構造的に有効な言語タグとして検証されます。
試してみましょう
console.log(Intl.getCanonicalLocales("EN-US"));
// 期待される結果: Array ["en-US"]
console.log(Intl.getCanonicalLocales(["EN-US", "Fr"]));
// 期待される結果: Array ["en-US", "fr"]
try {
Intl.getCanonicalLocales("EN_US");
} catch (err) {
console.log(err.toString());
// 期待される結果 (Firefox/Safari): RangeError: invalid language tag: "EN_US"
// 期待される結果 (Chrome): RangeError: Incorrect locale information provided
}
構文
js
Intl.getCanonicalLocales(locales)
引数
locales-
正規のロケール名を取得するための文字列値のリストです。
返値
正規のロケール名を含む配列です。
例
>getCanonicalLocales の使用
js
Intl.getCanonicalLocales("EN-US"); // ["en-US"]
Intl.getCanonicalLocales(["EN-US", "Fr"]); // ["en-US", "fr"]
Intl.getCanonicalLocales("EN_US");
// RangeError:'EN_US' is not a structurally valid language tag
仕様書
| 仕様書 |
|---|
| ECMAScript® 2027 Internationalization API Specification> # sec-intl.getcanonicallocales> |