Intl.getCanonicalLocales()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since October 2017.

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 

仕様書

Specification
ECMAScript® 2026 Internationalization API Specification
# sec-intl.getcanonicallocales

ブラウザーの互換性

関連情報