描述
语言是区域设置的核心属性之一。Unicode 规范将区域设置的语言标识符视为语言和地区(以区分方言和变体,例如,英式英语与美式英语)。Intl.Locale 的 language 属性严格返回该区域设置的语言子标签。
language 属性的值在构造时设置,可以通过区域设置标识符的第一部分,或者通过 Intl.Locale() 构造函数的 language 选项来设置。如果两者都存在,则后者具有优先权。
language 的 set 访问器为 undefined。您不能直接修改此属性。
示例
与其他区域设置子标签一样,语言可以通过区域设置字符串,或者通过构造函数的配置对象参数添加到 Intl.Locale 对象中。
通过区域设置字符串设置语言
为了成为有效的 Unicode 区域设置标识符,字符串必须以语言子标签开头。Intl.Locale() 构造函数的主要参数必须是有效的 Unicode 区域设置标识符,因此无论何时使用构造函数,都必须为其传递包含语言子标签的标识符。
js
const locale = new Intl.Locale("en-Latn-US");
console.log(locale.language); // "en"
通过配置对象参数覆盖语言
虽然必须指定语言子标签,但 Intl.Locale() 构造函数有一个可选的配置对象参数,可以覆盖语言子标签。
js
const locale = new Intl.Locale("en-Latn-US", { language: "es" });
console.log(locale.language); // "es"
规范
| 规范 |
|---|
| ECMAScript® 2026 国际化 API 规范 # sec-Intl.Locale.prototype.language |
浏览器兼容性
加载中…
另见
Intl.Locale- Unicode 语言子标签(Unicode locale data markup language 规范)