Intl.Collator.prototype.compare()

The Intl.Collator.prototype.compare() method compares two strings according to the sort order of this Intl.Collator object.

Syntax

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 Intl.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"

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 Specification
# sec-intl.collator.prototype.compare

Browser compatibility

BCD tables only load in the browser

See also