This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.
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"]
Specification
| Specification | Status | Comment | 
|---|---|---|
| HTML5.1 The definition of 'NavigatorLanguage.languages' in that specification. | Working Draft | Initial definition. | 
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari | 
|---|---|---|---|---|---|
| Basic support | 32 | 32 (32) [1] | Not supported | Not supported | Not supported | 
| on Web workers | ? | 35 (35) | ? | ? | ? | 
| Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | 
|---|---|---|---|---|---|
| Basic support | Not supported | 32.0 (32)[1] | Not supported | Not supported | Not supported | 
| on Web workers | ? | 35.0 (35) | ? | ? | ? | 
[1]In Firefox, the navigator.languages property's value is taken from the intl.accept_languages preference.