このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

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 ⁨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

仕様書

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

ブラウザーの互換性

関連情報