Intl.Locale.prototype.numberingSystem

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上使用。自 2020 年 9 月起,所有浏览器均已提供此功能。

Intl.Locale 实例的 numberingSystem 访问器属性会返回此区域设置的数字系统

描述

数字系统是表达数字的系统。有关支持的数字系统类型的列表,请参阅 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"

通过配置对象参数添加数字系统

Intl.Locale() 构造函数有一个可选的配置对象参数,其中可以包含多种扩展类型,包括数字系统类型。将配置对象的 numberingSystem 属性设置为您想要的数字系统类型,然后将其传递给构造函数。

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

规范

规范
ECMAScript® 2026 国际化 API 规范
# sec-Intl.Locale.prototype.numberingSystem

浏览器兼容性

另见