📅  最后修改于: 2023-12-03 14:54:30.639000             🧑  作者: Mango
localeCompare()
是 JavaScript 中字符串的方法之一,用于比较两个字符串的顺序。这可用于对字符串进行排序,或者按字母顺序对其进行检索。
该方法可以根据本地化规则进行比较,这意味着较大的字符串不一定始终在较小的字符串之后,而是根据本地化规则来排序。
string.localeCompare(compareString[, locales[, options]])
string
:要进行比较的字符串。
compareString
:与主字符串比较的字符串。
locales
:可选参数,指定要使用的语言和排序规则的语言环境。(默认值为系统默认的语言环境)
options
:可选参数,一个对象,指定其他比较选项。
该方法返回一个数字,表示两个字符串的比较结果。
string
小于 compareString
,则返回一个小于 0 的数。string
大于 compareString
,则返回一个大于 0 的数。string
与 compareString
相等,则返回 0。const a = 'apple';
const b = 'banana';
const c = 'cherry';
console.log(a.localeCompare(b)); // -1
console.log(b.localeCompare(a)); // 1
console.log(b.localeCompare(c)); // -1
console.log(a.localeCompare(a)); // 0
在下面的示例中,使用了不同的语言环境 locales
,从而使用与主机环境不同的排序和字符权值。
const a = 'ä';
const b = 'z';
console.log(a.localeCompare(b, 'sv')); // 1
console.log(a.localeCompare(b, 'en')); // -1
在瑞典语环境中,字母 ä
随后是 z
。在英语环境中, ä
更可能被认为是 a
,并且在 z
之前。