The Intl.Collator.prototype.compare()
method compares two strings according to the sort order of this Collator
object.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Syntax
collator.compare(string1, string2)
Parameters
string1
string2
- The strings to compare against each other.
Description
The compare
getter function returns a number indicating how string1
and string2
compare to each other according to the sort order of this Collator
object: a negative value if string1
comes before string2
; a positive value if string1
comes after string2
; 0 if they are considered equal.
Examples
Using compare
for array sort
Use the compare
getter function for sorting arrays. Note that the function is bound to the collator from which it was obtained, so it can be passed directly to 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"
Using compare
for array search
Use the compare
getter function for finding matching strings in arrays:
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(v => collator.compare(v, s) === 0); console.log(matches.join(', ')); // → "Congrès, congres"
Specifications
Specification |
---|
ECMAScript Internationalization API (ECMA-402) The definition of 'Intl.Collator.prototype.compare' in that specification. |
Browser compatibility
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
compare | Chrome Full support 24 | Edge Full support 12 | Firefox Full support 29 | IE Full support 11 | Opera Full support 15 | Safari Full support 10 | WebView Android Full support 4.4 | Chrome Android Full support 25 | Firefox Android Full support 56 | Opera Android Full support 14 | Safari iOS Full support 10 | Samsung Internet Android Full support 1.5 | nodejs
Full support
0.12
|
Legend
- Full support
- Full support
- See implementation notes.
- See implementation notes.