String.prototype.toLocaleUpperCase()

O método toLocaleUpperCase() retorna o valor da string em maiúsculas, de acordo com qualquer mapeamento de caixa de texto específico da localidade.

Sintaxe

str.toLocaleUpperCase()
str.toLocaleUpperCase(locale) 
str.toLocaleUpperCase([locale, locale, ...])

Parâmetros

locale
Opcional. O parâmetro locale indica o local a ser usado para converter para maiúsculas de acordo com qualquer mapeamento de caixa de texto específico do local. Se vários locais forem fornecidos em um Array, o melhor local disponível é usado. A localidade padrão é a localidade atual do ambiente do host.

Valor retornado

Uma nova string que representa a string original convertida em maiúsculas, de acordo com qualquer mapeamento de caixa de texto específico do local.

Exceções

  • Um RangeError ("invalid language tag: xx_yy") é lançado se um argumento locale não for uma tag de idioma válido.
  • Um TypeError ("invalid element in locales argument") é lançado se um elemento do array não for do tipo string.

Descrição

O método toLocaleUpperCase() retorna o valor da string convertida em maiúsculas de acordo com qualquer mapeamento de caixa de texto específico do local. toLocaleUpperCase() não afeta o valor da string em si. Na maioria dos casos, ele produzirá o mesmo resultado que toUpperCase(), mas para alguns locais, como turco, cujos mapeamentos de caixa de texto não seguem o mapeamento de caixa de texto padrão em Unicode, pode haver um resultado diferente.

Observe também que a conversão não é necessariamente um mapeamento de caracteres 1:1, pois alguns caracteres podem resultar em dois (ou até mais) caracteres quando transformados em maiúsculas. Portanto, o comprimento da string resultante pode ser diferente do comprimento da string de entrada. Isso também implica que a conversão não é estável, então, por exemplo, o seguinte pode retornar false:
x.toLocaleLowerCase() === x.toLocaleUpperCase(). toLocaleLowerCase()

Exemplos

Usando toLocaleUpperCase()

'alfabeto'.toLocaleUpperCase(); // 'ALFABETO'

'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'

Especificações

Specification
ECMAScript (ECMA-262)
The definition of 'String.prototype.toLocaleUpperCase' in that specification.
ECMAScript Internationalization API (ECMA-402)
The definition of 'String.prototype.toLocaleUpperCase' in that specification.
Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
toLocaleUpperCaseChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 5.5Opera Full support 4Safari Full support 1.3WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support 0.1.100
localeChrome Full support 58Edge Full support 12Firefox Full support 55IE Full support 6Opera Full support 45Safari Full support 10WebView Android Full support 58Chrome Android Full support 58Firefox Android Full support 55Opera Android Full support 42Safari iOS Full support 10Samsung Internet Android Full support 7.0nodejs Full support 13.0.0
Full support 13.0.0
Partial support 0.12
Notes
Notes Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available for versions prior to 13, see Node.js documentation on the --with-intl option and how to provide the data.

Legend

Full support  
Full support
See implementation notes.
See implementation notes.

Veja também