Intl.Locale.prototype.region
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年9月.
region は Intl.Locale インスタンスのアクセサープロパティで、このロケールに関連付けられた世界の地域(ふつうは国)を返します。
解説
地域は、ロケールを世界の特定の地域に位置づけるための、ロケール識別子の重要な要素となります。ロケールの地域を知ることは、ロケール間の違いを識別する上で非常に重要です。たとえば、イギリスとアメリカ合衆国では英語が使われていますが、両国間では綴りやその他の言語の慣習に違いがあります。ロケールの地域を知ることで、 JavaScript プログラマーがサイトやアプリケーションのコンテンツを世界の様々な地域から見たときに正しく表示されるようにするのに役立ちます。
region プロパティの値は、構築時に設定されます。設定方法は、ロケール識別子の script の後の部分を使用するか、または Intl.Locale() コンストラクターの region オプションを使用します。両方が存在する場合、後者が優先されます。どちらも存在しない場合、プロパティの値は undefined となります。
region の設定アクセサーは undefined です。このプロパティを直接変更することはできません。
例
他のロケールサブタグと同様に、地域の値はロケール文字列を介して、またはコンストラクターへの設定オブジェクト引数として、Intl.Locale オブジェクトに追加できます。
ロケール識別子の文字列引数で地域を設定
地域は、存在する場合、有効な Unicode 言語識別子文字列の 3 番目(script が存在する場合、それ以外は 2 番目)の部分であり、Intl.Locale() コンストラクターに渡される初期ロケール識別子文字列に追加できます。なお、地域はロケール識別子の必須項目ではありません。
const locale = new Intl.Locale("en-Latn-US");
console.log(locale.region); // "US"
構成オブジェクトから地域を設定
Intl.Locale() コンストラクターには、オプションの設定オブジェクト引数があります。設定オブジェクトの region プロパティを希望の領域に設定し、それをコンストラクターに渡します。
const locale = new Intl.Locale("fr-Latn", { region: "FR" });
console.log(locale.region); // "FR"
仕様書
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-Intl.Locale.prototype.region> |