La propriété Intl.Collator.prototype.compare est un accesseur qui renvoie une fonction qui compare deux chaînes de caractères en tenant compte des options spécifiées pour la locale et l'ordre de tri dans l'objet Collator.

Syntaxe

collator.compare(chaine1, chaine2)

Paramètres

chaine1
chaine2
Les chaînes de caractères à comparer.

Description

La fonction renvoyée par compare retourne un nombre qui indique le résultat de la comparaison entre chaine1 et chaine2 selon l'ordre de tri de l'objet Collator : la valeur obtenue sera négative si chaine1 précède chaine2, positive si chaine1 succède à chaine2, nulle si les deux chaînes sont considérées égales.

Exemples

Utiliser compare pour trier un tableau

Dans cet exemple, on utilise la fonction renvoyée par compare pour trier des tableaux. On observe que la fonction est liée à l'objet Collator, on peut donc directement la passer à la méthode 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"

Utiliser compare pour chercher dans un tableau

Ici, on utilise la fonction renvoyée par compare pour trouver les chaînes égales à une chaîne donnée parmi tableau :

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"

Spécifications

Spécification Statut Commentaires
ECMAScript Internationalization API 1.0 (ECMA-402)
La définition de 'Intl.Collator.prototype.compare' dans cette spécification.
Standard Définition initiale.
ECMAScript Internationalization API 2.0 (ECMA-402)
La définition de 'Intl.Collator.prototype.compare' dans cette spécification.
Standard  
ECMAScript Internationalization API 4.0 (ECMA-402)
La définition de 'Intl.Collator.prototype.compare' dans cette spécification.
Projet  

Compatibilité des navigateurs

Update compatibility data on GitHub
OrdinateurMobileServeur
ChromeEdgeFirefoxInternet ExplorerOperaSafariWebview AndroidChrome pour AndroidEdge MobileFirefox pour AndroidOpera pour AndroidSafari pour iOSSamsung InternetNode.js
Support simpleChrome Support complet 24Edge Support complet OuiFirefox Support complet 29IE Support complet 11Opera Support complet 15Safari Support complet 10WebView Android Aucun support NonChrome Android Support complet 26Edge Mobile Support complet OuiFirefox Android Support complet 56Opera Android ? Safari iOS Support complet 10Samsung Internet Android Support complet Ouinodejs ?

Légende

Support complet  
Support complet
Aucun support  
Aucun support
Compatibilité inconnue  
Compatibilité inconnue

Voir aussi

Étiquettes et contributeurs liés au document

Contributeurs à cette page : SphinxKnight
Dernière mise à jour par : SphinxKnight,