mozilla
Your Search Results

    Intl.Collator.prototype.compare

    Summary

    The Intl.Collator.prototype.compare property returns a getter function that compares two strings according to the sort order of this Collator object.

    Syntax

    collator.compare(string1, string2)

    Parameters

    string1
    string2
    The strings to compare against each other.

    Description

    The function returned by the compare getter 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

    Example: Using compare for sort array

    Use the function returned by the compare getter 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"
    

    Example: Using compare for search in array

    Use the function returned by the compare getter 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(function(v) {
      return collator.compare(v, s) === 0;
    });
    console.log(matches.join(', '));
    // → "Congrès, congres"
    

    Specifications

    Specification Status Comment
    ECMAScript Internationalization API 1.0 (ECMA-402)
    The definition of 'Intl.Collator.prototype.compare' in that specification.
    Standard Initial definition.

    Browser compatibility

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Basic support 24 29 (29) 11 15 Not supported
    Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Basic support Not supported 26 Not supported
    bug 864843
    Not supported Not supported Not supported

    See also

    Document Tags and Contributors

    Contributors to this page: Sheppy, Norbert, fscholz, Mingun
    Last updated by: Mingun,