Intl.Locale.prototype.collation

基线 广泛可用

此功能已完善,可在许多设备和浏览器版本中使用。它自以下时间起在浏览器中可用 2020 年 9 月.

collationIntl.Locale 实例的访问器属性,它返回此区域设置的 排序类型,该类型用于根据区域设置的规则对字符串进行排序。

描述

排序是指对字符字符串进行排序的过程。每当需要对字符串进行排序并排列成特定顺序时,都会使用它,从搜索查询结果到数据库中记录的排序。虽然字符串排序的想法可能看起来微不足道,但排序的概念因地区和语言而异。collation 属性的值在构造时设置,可以通过区域设置标识符的 co 键或 Intl.Locale() 构造函数的 collation 选项设置。如果两者都存在,则后者优先;如果两者都不存在,则该属性的值为 undefined

有关支持的排序类型的列表,请参阅 Intl.Locale.prototype.getCollations()

collation 的设置访问器为 undefined。您不能直接更改此属性。

示例

与其他区域设置子标签一样,排序类型可以通过区域设置字符串或构造函数的配置对象参数添加到 Intl.Locale 对象中。

通过区域设置字符串添加排序类型

Unicode 区域设置字符串规范 中,排序类型是区域设置键“扩展子标签”。这些子标签添加了有关区域设置的其他数据,并通过使用 -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 国际化 API 规范
# sec-Intl.Locale.prototype.collation

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。

另请参阅