The Intl.Locale.prototype.language
property is an accessor property that returns the language associated with the locale.
Description
Language is one of the core features of a locale. The Unicode specification treats the language identifier of a locale as the language and the region together (to make a distiction between dialects and variations, e.g. British English vs. American English). The language
property of a Locale
returns strictly the locale's language subtag.
Examples
Setting the language in the locale identifer string argument
In order to be a valid Unicode locale identifier, a string must start with the language subtag. The main argument to the Locale
constructor must be a valid Unicode locale identifier, so whenever the constructor is used, it must be passed an identifier with a language subtag.
let langStr = new Intl.Locale("en-Latn-US"); console.log(langStr.language); // Prints "en"
Overriding language via the configuration object
While the language subtag must be specified, the Locale
constructor takes a configuration object, which can override the language subtag.
let langObj = new Intl.Locale("en-Latn-US", {language: "es"}); console.log(langObj.language); // Prints "es"
Specifications
Specification |
---|
ECMAScript Internationalization API (ECMA-402) |
Browser compatibility
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
language | Chrome Full support 74 | Edge Full support 79 | Firefox Full support 75 | IE No support No | Opera Full support 62 | Safari Full support 14 | WebView Android Full support 74 | Chrome Android Full support 74 | Firefox Android No support No | Opera Android Full support 53 | Safari iOS Full support 14 | Samsung Internet Android Full support 11.0 | nodejs
Full support
12.0.0
|
Legend
- Full support
- Full support
- No support
- No support
- See implementation notes.
- See implementation notes.