--- title: String.prototype.toLocaleUpperCase() slug: Web/JavaScript/Reference/Global_Objects/String/toLocaleUpperCase tags: - Internationalization - JavaScript - Method - Prototype - Reference - String translation_of: Web/JavaScript/Reference/Global_Objects/String/toLocaleUpperCase ---
toLocaleUpperCase()
メソッドは、呼び出した文字列の値を、ロケールに依存した対応付けに基づいて大文字に変換して返します。
str.toLocaleUpperCase() str.toLocaleUpperCase(locale) str.toLocaleUpperCase([locale, locale, ...])
locale
{{optional_inline}}locale
引数は、ロケールに依存した対応に基づいた大文字への変換に使用されるロケールを示します。複数のロケールが {{jsxref("Array")}} で与えられた場合は、利用可能な最良のロケールが使用されます。既定のロケールはホスト環境の現在のロケールです。呼び出した文字列をロケールに依存した対応に基づいて大文字に変換したものを表す新しい文字列です。
locale
引数が妥当な言語タグでない場合に発生します。toLocaleUpperCase()
メソッドは、ロケール固有の大文字小文字の対応付けに従って大文字に変換された文字列の値を返します。 toLocaleUpperCase()
はその文字列自体に影響を与えません。ほとんどの場合は {{jsxref("String.prototype.toUpperCase()", "toUpperCase()")}} と同じ結果が得られますが、トルコ語のように大文字小文字のマッピングが Unicode 既定の大文字小文字のマッピングに従っていないロケールの場合は、異なる結果が得られる可能性があります。
また、変換は必ずしも文字の 1:1 の対応付けであるとは限らず、一部の文字は大文字に変換されたときに2文字 (それ以上の場合も) になる可能性があることに注意してください。そのため,結果の文字列の長さは入力の長さと異なる場合があります。これは変換が安定していないことも意味します。すなわち、次の式は false
を返す可能性があります。
x.toLocaleLowerCase() === x.toLocaleUpperCase().toLocaleLowerCase()
'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'
仕様書 |
---|
{{SpecName('ESDraft', '#sec-string.prototype.tolocaleuppercase', 'String.prototype.toLocaleUpperCase')}} |
{{SpecName('ES Int Draft', '#sup-string.prototype.tolocaleuppercase', 'String.prototype.toLocaleUpperCase')}} |
{{Compat("javascript.builtins.String.toLocaleUpperCase")}}