NavigatorLanguage.languages

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The NavigatorLanguage.languages read-only property returns an array of DOMStrings representing the user's preferred languages. The language is described using BCP 47 language tags. In the returned array they are ordered by preference with the most preferred language first.

The value of navigator.language is the first element of the returned array.

When its value changes, as the user's preferred languages are changed a languagechange event is fired on the Window object.

The Accept-Language HTTP header in every HTTP request from the user's browser uses the same value for the navigator.languages property except for the extra qvalues (quality values) field (e.g. en-US;q=0.8).

Syntax

preferredLanguages = globalObj.navigator.languages

Examples

navigator.language   //"en-US"
navigator.languages  //["en-US", "zh-CN", "ja-JP"]

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'NavigatorLanguage: languages' in that specification.
Living Standard Initial definition

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
languages
Experimental
Chrome Full support 32
Notes
Full support 32
Notes
Notes In Chrome, navigator.language is the language of the browser UI, and is not guaranteed to be equal to navigator.languages[0].
Edge Full support 12
Notes
Full support 12
Notes
Notes In Chromium versions of Edge, this returns the browser UI language, not the value of the Accept-Language HTTP header.
Firefox Full support 32
Notes
Full support 32
Notes
Notes In Firefox, the navigator.languages property's value is taken from the intl.accept_languages preference.
IE Full support 11
Notes
Full support 11
Notes
Notes Closest available (non-standard) properties are userLanguage and browserLanguage.
Opera Full support 24Safari Full support 11WebView Android Full support 4.4.3
Notes
Full support 4.4.3
Notes
Notes In Chrome, navigator.language is the language of the browser UI, and is not guaranteed to be equal to navigator.languages[0].
Chrome Android Full support 32
Notes
Full support 32
Notes
Notes In Chrome, navigator.language is the language of the browser UI, and is not guaranteed to be equal to navigator.languages[0].
Firefox Android Full support 4
Notes
Full support 4
Notes
Notes In Firefox, the navigator.languages property's value is taken from the intl.accept_languages preference.
Opera Android Full support 24Safari iOS Full support YesSamsung Internet Android Full support 2.0
Notes
Full support 2.0
Notes
Notes In Samsung Internet, navigator.language is the language of the browser UI, and is not guaranteed to be equal to navigator.languages[0].

Legend

Full support
Full support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.

See also