Navigator: language property
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.
The Navigator.language
read-only property returns a string representing the preferred language of the user, usually the language of the browser UI.
Value
A string representing the language version as defined in RFC 5646: Tags for Identifying Languages (also known as BCP 47). Examples of valid language codes include "en", "en-US", "fr", "fr-FR", "es-ES", etc.
Note that in Safari on iOS prior to 10.2, the country code returned is lowercase: "en-us", "fr-fr" etc.
Examples
Using Intl constructors to do language-specific formatting
The Intl
constructors allow formatting content to match the rules of a given locale. You can pass navigator.language
to them to format content in the locale corresponding to the user's preferred language:
const date = new Date("2012-05-24");
const formattedDate = new Intl.DateTimeFormat(navigator.language).format(date);
Specifications
Specification |
---|
HTML Standard # dom-navigator-language-dev |
Browser compatibility
BCD tables only load in the browser