Intl.Collator.prototype.compare
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.
Сводка
Свойство Intl.Collator.prototype.compare
возвращает функцию-геттер, сравнивающую две строки согласно порядку сортировки соответствующего объекта Collator
.
Синтаксис
collator.compare(string1, string2)
Параметры
string1
string2
-
Сравниваемые друг с другом строки.
Описание
Функция, возвращённая геттером compare
, возвращает число, указывающее, как строки string1
и string2
сравниваются друг с другом в соответствии с порядком сортировки объекта Collator
: отрицательное значение, если строка string1
предшествует строке string2
; положительное значение, если строка string1
следует за строкой string2
; 0, если строки считаются равными.
Примеры
Пример: использование функции compare
для сортировки массива
Использование функции, возвращённой геттером compare
, для сортировки массивов. Обратите внимание, что функция привязана к объекту Collator
, из которого она была получена, так что её можно передавать в Array.prototype.sort()
напрямую.
var a = ["Offenbach", "Österreich", "Odenwald"];
var collator = new Intl.Collator("de-u-co-phonebk");
a.sort(collator.compare);
console.log(a.join(", "));
// → "Odenwald, Österreich, Offenbach"
Пример: использование функции compare
для поиска в массиве
Использование функции, возвращённой геттером compare
, для поиска совпадающих строк в массиве:
var a = ["Congrès", "congres", "Assemblée", "poisson"];
var collator = new Intl.Collator("fr", {
usage: "search",
sensitivity: "base",
});
var s = "congres";
var matches = a.filter(function (v) {
return collator.compare(v, s) === 0;
});
console.log(matches.join(", "));
// → "Congrès, congres"
Спецификации
Specification |
---|
ECMAScript Internationalization API Specification # sec-intl.collator.prototype.compare |
Совместимость с браузерами
BCD tables only load in the browser