Navigator:languages 属性
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
只读属性 Navigator.languages
返回一个字符串数组,表示用户的首选语言。语言使用根据 RFC 5646: 语言识别标签(也称为 BCP 47) 中定义的语言标签进行描述。在返回的数组中,它们按优先级排序,首选语言排在第一位。
navigator.language
的值是返回数组中的第一个元素。
当用户首选语言发生变化时,languagechange
事件会在 Window
对象上触发。
用户浏览器发出的每个 HTTP 请求中的 Accept-Language
HTTP 标头使用与 navigator.languages
属性相同的值,但额外包含 qvalues
(权重值)字段(例如 en-US;q=0.8
)。
值
一个字符串数组。
示例
列出 navigator.language 和 navigator.languages 的内容
js
navigator.language; // "zh-CN"
navigator.languages; // ["zh-CN", "en-US", "ja-JP"]
使用 Intl 构造函数进行语言特定格式化,并提供回退机制
包含在 navigator.languages
中的语言标识符数组可以直接传递给 Intl
构造函数,以实现基于首选项的备用语言环境选择,其中使用列表中第一个匹配 Intl
支持的语言环境的条目:
js
const date = new Date("2012-05-24");
const formattedDate = new Intl.DateTimeFormat(navigator.languages).format(date);
规范
Specification |
---|
HTML Standard # dom-navigator-languages-dev |
浏览器兼容性
BCD tables only load in the browser