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 language read-only property of the Navigator interface returns a string representing the preferred language of the user, usually the language of the browser UI.

Value

A string representing the language version in BCP 47 language tag format. Examples of valid language tags 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:

js
const date = new Date("2012-05-24");

const formattedDate = new Intl.DateTimeFormat(navigator.language).format(date);

Specifications

Specification
HTML
# dom-navigator-language-dev

Browser compatibility

See also