The toLocaleUpperCase()
method returns the calling string value converted to upper case, according to any locale-specific case mappings.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
str.toLocaleUpperCase() str.toLocaleUpperCase(locale) str.toLocaleUpperCase([locale, locale, ...])
Parameters
locale
Optional- The
locale
parameter indicates the locale to be used to convert to upper case according to any locale-specific case mappings. If multiple locales are given in anArray
, the best available locale is used. The default locale is the host environment’s current locale.
Return value
A new string representing the calling string converted to upper case, according to any locale-specific case mappings.
Exceptions
- A
RangeError
("invalid language tag: xx_yy") is thrown if alocale
argument isn't a valid language tag. - A
TypeError
("invalid element in locales argument") is thrown if an array element isn't of type string.
Description
The toLocaleUpperCase()
method returns the value of the string converted to upper case according to any locale-specific case mappings. toLocaleUpperCase()
does not affect the value of the string itself. In most cases, this will produce the same result as toUpperCase()
, but for some locales, such as Turkish, whose case mappings do not follow the default case mappings in Unicode, there may be a different result.
Also notice that conversion is not necessarily a 1:1 character mapping, as some characters might result in two (or even more) characters when transformed to upper-case. Therefore the length of the result string can differ from the input length. This also implies that the conversion is not stable, so i.E. the following can return false
:
x.toLocaleLowerCase() === x.toLocaleUpperCase().toLocaleLowerCase()
Examples
Using toLocaleUpperCase()
'alphabet'.toLocaleUpperCase(); // 'ALPHABET' 'Gesäß'.toLocaleUpperCase(); // 'GESÄSS' 'i\u0307'.toLocaleUpperCase('lt-LT'); // 'I' let locales = ['lt', 'LT', 'lt-LT', 'lt-u-co-phonebk', 'lt-x-lietuva']; 'i\u0307'.toLocaleUpperCase(locales); // 'I'
Specifications
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
toLocaleUpperCase | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 5.5 | Opera Full support 4 | Safari Full support 1.3 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 1 | Samsung Internet Android Full support 1.0 | nodejs Full support 0.1.100 |
locale | Chrome Full support 58 | Edge Full support 12 | Firefox Full support 55 | IE Full support 6 | Opera Full support 45 | Safari Full support 10 | WebView Android Full support 58 | Chrome Android Full support 58 | Firefox Android Full support 55 | Opera Android Full support 42 | Safari iOS Full support 10 | Samsung Internet Android Full support 7.0 | nodejs
Full support
13.0.0
|
Legend
- Full support
- Full support
- See implementation notes.
- See implementation notes.