languages property

JSArray<JSString> get languages

The Navigator.languages read-only property returns an array of strings representing the user's preferred languages. The language is described using language tags according to 5646, "Tags for Identifying Languages (also known as BCP 47)". 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 Window.languagechange_event event is fired on the Window object.

The HTTP header in every HTTP request from the user's browser generally lists the same locales as the navigator.languages property, with decreasing q values (quality values). Some browsers (Chrome and Safari) add language-only fallback tags in Accept-Language—for example, en-US,en;q=0.9,zh-CN;q=0.8,zh;q=0.7 when navigator.languages is ["en-US", "zh-CN"]. For privacy purposes (reducing ), both Accept-Language and navigator.languages may not include the full list of user preferences, such as in Safari (always) and Chrome's incognito mode, where only one language is listed.

Implementation

external JSArray<JSString> get languages;