描述
排序(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 |
浏览器兼容性
加载中…