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)

Параметры

string1string2

Сравниваемые друг с другом строки.

Описание

Функция, возвращённая геттером compare, возвращает число, указывающее, как строки string1 и string2 сравниваются друг с другом в соответствии с порядком сортировки объекта Collator: отрицательное значение, если строка string1 предшествует строке string2; положительное значение, если строка string1 следует за строкой string2; 0, если строки считаются равными.

Примеры

Пример: использование функции compare для сортировки массива

Использование функции, возвращённой геттером compare, для сортировки массивов. Обратите внимание, что функция привязана к объекту Collator, из которого она была получена, так что её можно передавать в Array.prototype.sort() напрямую.

js
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, для поиска совпадающих строк в массиве:

js
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® 2025 Internationalization API Specification
# sec-intl.collator.prototype.compare

Совместимость с браузерами

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
compare

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
See implementation notes.

Смотрите также