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.
io error: No such file or directory (os error 2) (/home/runner/work/yari/yari/mdn/translated-content/files/ru/web/api/html_dom_api/index.md)
Доступное только для чтения свойство 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
navigator.language; // "en-US"
navigator.languages; // ["en-US", "zh-CN", "ja-JP"]
Использование конструкторов Intl для форматирования, зависящего от языка
Массив идентификаторов языка, содержащийся в navigator.languages
, может быть передан в конструкторы Intl
. Будет использована первая поддерживаемая Intl
локаль из переданного списка:
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