Для определения текущей локали я нашел разные подходы:
- Находясь в браузере, большинство людей предлагают посмотреть на заголовки HTTP (
Accept-Language
)
- Некоторые люди предлагают проконсультироваться
navigator.language
- Находясь в бэкэнде (Node.js) и отдельно от HTTP, предлагается обратиться к (системно-зависимому)
process.env
С другой стороны, API Интернационализации ECMAScript определяет аргумент locales
для каждого из конструкторов Intl
как необязательный:
Если аргумент locales
не предоставлен или не определен, среда выполнения
используется язык по умолчанию.
Таким образом, создается впечатление, что должен существовать независимый от браузера и операционной системы способ получения «языка по умолчанию среды выполнения».
Есть ли более простой способ получить локаль по умолчанию среды выполнения, чем
new Intl.NumberFormat().resolvedOptions().locale
Вопрос Как / Где JavaScript определяет локаль по умолчанию? отличается тем, что запрашивает реализацию обнаружения локали по умолчанию (на хосте браузера). В отличие от этого, мой вопрос не о реализации, а о существовании стандартного API.