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

View in English Always switch to English

Intl.Locale.prototype.numberingSystem

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月.

numberingSystemIntl.Locale インスタンスのアクセサープロパティで、このロケールが使用する記数法を返します。

解説

対応している記数法の種類の一覧については、Intl.supportedValuesOf() を参照してください。

numberingSystem プロパティの値は、ロケール識別子の nu キー、または Intl.Locale() コンストラクターの numberingSystem オプションを通じて、コンストラクション時に設定されます。両方が存在する場合、後者が優先されます。どちらも存在しない場合、プロパティの値は undefined となります。

numberingSystem の設定アクセサーは undefined です。このプロパティを直接変更することはできません。

他のロケールサブタグと同様に、記数法はロケール文字列を介して、またはコンストラクターへの設定オブジェクト引数として、Intl.Locale オブジェクトに追加できます。

ロケール文字列から記数法を設定

Unicode ロケール文字列仕様書では、 numberingSystem は「拡張サブタグ」の一つです。これらのサブタグは、ロケールに関する追加データを追加するもので、拡張キー -u を使用してロケール識別子に追加されます。Intl.Locale() コンストラクターに渡される初期ロケール識別子文字列に記数法を追加するには、まず -u 拡張キーが存在しない場合にはこれを追加します。次に、 -nu 拡張キーを追加して、記数法の値を追加していることを示します。最後に、文字列に記数法の値を追加します。

js
const locale = new Intl.Locale("fr-Latn-FR-u-nu-mong");
console.log(locale.numberingSystem); // "mong" と表示

構成オブジェクト引数から numberingSystem の値を設定

Intl.Locale コンストラクターには、オプションで構成オブジェクトの引数があり、これを使用して拡張の種類を渡すことができます。構成オブジェクトの numberingSystem プロパティを任意の記数法に設定し、コンストラクターに渡します。

js
const locale = new Intl.Locale("en-Latn-US", { numberingSystem: "latn" });
console.log(locale.numberingSystem); // "latn" と表示

仕様書

Specification
ECMAScript® 2026 Internationalization API Specification
# sec-Intl.Locale.prototype.numberingSystem

ブラウザーの互換性

関連情報