String.prototype.toLocaleUpperCase()

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

toLocaleUpperCase() 方法用於將 String 值轉換為大寫,遵循任何特定於區域設定的大小寫對映規則。

試一試

const city = "istanbul";

console.log(city.toLocaleUpperCase("en-US"));
// Expected output: "ISTANBUL"

console.log(city.toLocaleUpperCase("TR"));
// Expected output: "İSTANBUL"

語法

js
toLocaleUpperCase()
toLocaleUpperCase(locales)

引數

locales 可選

一個帶有 BCP 47 語言標籤的字串,或者一個此類字串的陣列。指示用於根據任何特定於區域設定的大小寫對映將字串轉換為大寫的區域設定。有關 locales 引數的通用形式和解釋,請參閱 Intl 主頁面上的引數說明

與其他使用 locales 引數的方法不同,toLocaleUpperCase() 不允許進行區域設定匹配。因此,在檢查 locales 引數的有效性後,toLocaleUpperCase() 始終使用列表中的第一個區域設定(如果列表為空,則使用預設區域設定),即使該區域設定不受實現支援。

返回值

一個新字串,表示呼叫該方法的字串已根據任何特定於區域設定的大小寫對映轉換為大寫。

描述

toLocaleUpperCase() 方法返回根據任何特定於區域設定的大小寫對映轉換為大寫的字串值。toLocaleUpperCase() 不會影響字串本身的值。在大多數情況下,這將產生與 toUpperCase() 相同的結果,但對於某些區域設定,例如土耳其語,其大小寫對映不遵循 Unicode 中的預設大小寫對映,可能會有不同的結果。

還要注意,轉換不一定是 1:1 的字元對映,因為某些字元在轉換為大寫時可能會產生兩個(甚至更多)字元。因此,結果字串的長度可能與輸入長度不同。這也意味著轉換不是穩定的,例如,以下表達式可能會返回 falsex.toLocaleLowerCase() === x.toLocaleUpperCase().toLocaleLowerCase()

示例

使用 toLocaleUpperCase()

js
"alphabet".toLocaleUpperCase(); // 'ALPHABET'

"Gesäß".toLocaleUpperCase(); // 'GESÄSS'

"i\u0307".toLocaleUpperCase("lt-LT"); // 'I'

const locales = ["lt", "LT", "lt-LT", "lt-u-co-phonebk", "lt-x-lietuva"];
"i\u0307".toLocaleUpperCase(locales); // 'I'

規範

規範
ECMAScript® 2026 語言規範
# sec-string.prototype.tolocaleuppercase
ECMAScript® 2026 國際化 API 規範
# sup-string.prototype.tolocaleuppercase

瀏覽器相容性

另見