Web/API/NavigatorLanguage/languages

From Get docs

This is an experimental technologyCheck 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 StandardThe definition of 'NavigatorLanguage: languages' in that specification. Living Standard Initial definition

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung 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 24

Safari

Full support 11

WebView 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 24

Safari iOS

Full support Yes

Samsung 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