Intl.Locale.prototype.collation

Baseline 已廣泛支援

此功能已成熟,並可在許多裝置和瀏覽器版本上使用。自 2020 年 9 月起,所有瀏覽器均已提供此功能。

Intl.Locale 例項的 collation 訪問器屬性會返回此區域設定的 排序型別,用於根據該區域設定的規則對字串進行排序。

描述

排序(Collation)是將字元組成的字串進行排序的過程。無論何時需要對字串進行排序並按特定順序排列,例如搜尋結果或資料庫中的記錄排序,都會用到它。雖然將字串排序的想法可能看起來很簡單,但排序的規則可能因地區和語言而異。支援的排序型別列表,請參閱 Intl.supportedValuesOf()

collation 屬性的值在構造時設定,可以透過區域設定識別符號的 co 鍵,或透過 Intl.Locale() 建構函式的 collation 選項進行設定。如果兩者都存在,則後者具有優先權;如果兩者都不存在,則該屬性的值為 undefined

collation 的設定訪問器為 undefined。您無法直接修改此屬性。

示例

與其他區域設定子標籤一樣,可以透過區域設定字串或傳遞給建構函式的配置物件引數,將排序型別新增到 Intl.Locale 物件中。

透過區域設定字串新增排序型別

Unicode 區域設定字串規範中,collation 是一個“擴充套件子標籤”。這些子標籤提供了有關區域設定的額外資料,並透過 -u 擴充套件鍵新增到區域設定識別符號中。要將排序型別新增到傳遞給 Intl.Locale() 建構函式的初始區域設定識別符號字串中,請先新增 -u 擴充套件鍵(如果它不存在)。接著,新增 -co 擴充套件以指示您正在新增排序型別。最後,新增排序型別。

js
const locale = new Intl.Locale("zh-Hant-u-co-zhuyin");
console.log(locale.collation); // "zhuyin"

透過配置物件引數新增排序型別

Intl.Locale() 建構函式有一個可選的配置物件引數,其中可以包含多種擴充套件型別,包括排序型別。將配置物件的 collation 屬性設定為您想要的排序型別,然後將其傳遞給建構函式。

js
const locale = new Intl.Locale("zh-Hant", { collation: "zhuyin" });
console.log(locale.collation); // "zhuyin"

規範

規範
ECMAScript® 2026 國際化 API 規範
# sec-Intl.Locale.prototype.collation

瀏覽器相容性

另見