Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Intl.Collator
Baseline Widely available
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis septembre 2017.
L'objetIntl.Collator permet de comparer des chaînes de caractères en tenant compte de la locale.
Dans cet article
Exemple interactif
console.log(["Z", "a", "z", "ä"].sort(new Intl.Collator("de").compare));// Expected output: Array ["a", "ä", "z", "Z"]console.log(["Z", "a", "z", "ä"].sort(new Intl.Collator("sv").compare));// Expected output: Array ["a", "z", "Z", "ä"]console.log( ["Z", "a", "z", "ä"].sort( new Intl.Collator("de", { caseFirst: "upper" }).compare, ),);// Expected output: Array ["a", "ä", "Z", "z"]Constructeur
Intl.Collator()Crée un nouvel objet
Collator.
Méthodes statiques
Intl.Collator.supportedLocalesOf()Renvoie un tableau qui contient les locales, parmi celles fournies en arguments, qui sont prises en charge sans avoir à recourir à la locale par défaut de l'environnement d'exécution.
Méthodes des instances
Intl.Collator.prototype.compareUne fonction d'accesseur qui compare deux chaînes de caractères selon l'ordre de tri de l'objet
Intl.Collatorcourant.Intl.Collator.prototype.resolvedOptions()Renvoie un nouvel objet dont les propriétés reflètent les options de locale et de collation calculées à l'initialisation de l'objet.
Exemples
>UtiliserCollator
L'exemple qui suit illustre les différents résultats qu'on peut obtenir en comparant deux chaînes de caractères :
console.log(new Intl.Collator().compare("a", "c")); // → une valeur négativeconsole.log(new Intl.Collator().compare("c", "a")); // → une valeur positiveconsole.log(new Intl.Collator().compare("a", "a")); // → 0Les résultats indiqués ici sont génériques et, en pratique, peuvent varier entre les navigateurs et les versions des navigateurs. En effet les valeurs obtenues dépendent de l'implémentation. Les spécifications indiquent uniquement le signe (positif ou négatif) du résultat.
Utiliserlocales
Les résultats fournis parCollator.prototype.compare() varient selon les locales. Afin d'obtenir le bon ordre lexicographique dans votre application, il est nécessaire de spécifier la locale de l'utilisatrice ou l'utilisateur (et éventuellement des locales pour des cas de replis) en utilisant l'argumentlocales :
// en allemand, 'ä' est équivalent à 'a' pour le triconsole.log(new Intl.Collator("de").compare("ä", "z"));// → une valeur négative// en suédois, 'ä' arrive après 'z'console.log(new Intl.Collator("sv").compare("ä", "z"));// → une valeur positiveUtiliseroptions
Les résultats fournis parCollator.prototype.compare() peuvent être adaptés grâce à l'argumentoptions :
// en allemand, 'ä' est composé de la lettre de base 'a'console.log(new Intl.Collator("de", { sensitivity: "base" }).compare("ä", "a"));// → 0// en suédois, 'ä' et 'a' sont distincts en termes de baseconsole.log(new Intl.Collator("sv", { sensitivity: "base" }).compare("ä", "a"));// → une valeur positiveSpécifications
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # collator-objects> |