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.
Die compare()
-Methode von Intl.Collator
-Instanzen vergleicht zwei
Zeichenfolgen gemäß der Sortierreihenfolge dieses Collator-Objekts.
Probieren Sie es aus
const enCollator = new Intl.Collator("en");
const deCollator = new Intl.Collator("de");
const svCollator = new Intl.Collator("sv");
console.log(enCollator.compare("z", "a") > 0);
// Expected output: true
console.log(deCollator.compare("z", "ä") > 0);
// Expected output: true
console.log(svCollator.compare("z", "ä") > 0);
// Expected output: false
Syntax
compare(string1, string2)
Parameter
string1
,string2
-
Die Zeichenfolgen, die miteinander verglichen werden sollen.
Rückgabewert
Eine Zahl, die angibt, wie string1
und string2
gemäß der Sortierreihenfolge dieses Intl.Collator
-Objekts zueinander stehen:
- Ein negativer Wert, wenn
string1
vorstring2
kommt; - Ein positiver Wert, wenn
string1
nachstring2
kommt; - 0, wenn sie als gleich betrachtet werden.
Beispiele
Verwendung von compare für Array-Sortierung
Verwenden Sie die compare
-Funktion zum Sortieren von Arrays. Beachten Sie, dass die Funktion
an den Collator gebunden ist, von dem sie erhalten wurde, sodass sie direkt an
Array.prototype.sort()
übergeben werden kann.
const a = ["Offenbach", "Österreich", "Odenwald"];
const collator = new Intl.Collator("de-u-co-phonebk");
a.sort(collator.compare);
console.log(a.join(", ")); // "Odenwald, Österreich, Offenbach"
Verwendung von compare für Array-Suche
Verwenden Sie die compare
-Funktion, um übereinstimmende Zeichenfolgen in Arrays zu finden:
const a = ["Congrès", "congres", "Assemblée", "poisson"];
const collator = new Intl.Collator("fr", {
usage: "search",
sensitivity: "base",
});
const s = "congres";
const matches = a.filter((v) => collator.compare(v, s) === 0);
console.log(matches.join(", ")); // "Congrès, congres"
Spezifikationen
Specification |
---|
ECMAScript® 2025 Internationalization API Specification # sec-intl.collator.prototype.compare |