Intl.Locale.prototype.collation
===============================

La propriété **`Intl.Locale.prototype.collation`** est une propriété (à laquelle on accède via un accesseur) qui renvoie le type de collation pour l'instance de `Locale` courante. La collation est la méthode qui permet d'ordonner des chaînes de caractères en fonction des règles de la locale.

Description
-----------

La collation est la façon dont les chaînes de caractères sont ordonnées. Elle est utilisée lorsqu'on doit trier des chaînes de caractères (des résultats de recherche, des enregistrements dans une base de donnée, etc.). Bien que cela puisse sembler trivial, la collation varie d'une région à l'autre et d'une langue à une autre. Cette propriété permet aux développeurs de connaître le type de collation pour une locale donnée.

Voici un tableau listant les types de collation possibles tels que définis dans la spécification Unicode sur la collation.

Les différents types de collation| Type de collation | Description |
| --- | --- |
| `big5han` | 
 Ordre pinyin pour l'alphabet latin et ordre big5 pour les caractères CJK
 (utilisés en chinois)
  |
| `compat` | Une version précédente de l'ordre, utilisée à des fins de compatibilité |
| `dict` | Ordre à la façon d'un dictionnaire (comme utilisé en cingalais) |
| 

**Attention :** Le type `direct` a été
 déprécié et ne doit pas être utilisé.


`direct` | Ordre des points de code binaires (utilisé en hindoux) |
| `ducet` | La collation Unicode par défaut pour les éléments d'un tableau |
| `emoji` | L'ordre recommandé pour les émojis |
| `eor` | Règles d'ordre européennes |
| `gb2312` | 
 Ordre pinyin pour l'alphabet latin et ordre gb2312han pour les
 caractères CJK (utilisés en chinois)
  |
| `phonebk` | Ordre à la façon d'un annuaire (tel qu'en allemand) |
| `phonetic` | Ordre phonétique, basé sur la prononciation |
| `pinyin` | 
 Ordre pinyin pour les caractères de l'alphabet latin et les caractères
 CJK (utilisés en chniois)
  |
| `reformed` | Ordre réformé (tel qu'en suédois) |
| `search` | 
 Collation spéciale pour les chaînes de caractères utilisées pour des
 recherches
  |
| `searchjl` | Collation spéciale pour la recherche des consonnes initiales en coréen |
| `standard` | L'ordre par défaut pour chaque langue |
| `stroke` | 
 Ordre pinyin pour l'alphabet latin et ordre de dessin (*stroke*)
 pour les caractères CJK (utilisés en chinois)
  |
| `trad` | Ordre traditionnel (tel qu'en espagnol) |
| `unihan` | 
 Ordre pinyin pour l'alphabet latin et ordre Unihan radical pour les
 caractères CJK (utilisés en chinois)
  |
| `zhuyin` | 
 Ordre pinyin pour l'alphabet latin, ordre zhuyin pour les caractères
 Bopomofo et CJK (utilisés en chinois)
  |

Exemples
--------

À l'instar des autres étiquettes, le type de collation peut être défini pour l'objet `Intl.Locale` (en-US) via la chaîne de caractères qui définit la locale ou grâce au deuxième paramètre du constructeur qui est un objet de configuration.

### Définir le type de collation via la chaîne décrivant la locale

Le premier argument passé à `Intl.Locale` est une chaîne de caractères qui décrit la locale. Cette chaîne peut contenir des fragments additionnels (en plus de l'identifiant canonique de la locale). Pour cela, on ajoutera `-u` afin d'indiquer qu'on définit une extension. On ajoutera ensuite la clé identifiant cette extension, ici `-co` pour la collation. Enfin, on ajoutera la valeur souhaitée pour cette extension (dans cet exemple, `-emoji`) :


```js
let stringColl = new Intl.Locale("en-Latn-US-u-co-emoji");
console.log(stringColl.collation); // Affichera "emoji" dans la console
```

### Définir le type de collation via l'objet de configuration

Le constructeur `Intl.Locale` possède un deuxième argument optionnel qui est un objet de configuration. Chaque propriété de cet objet pourra permettre de préciser une extension à la locale, y compris un type de collation. Pour définir le type de collation, on pourra utiliser une propriété `collation` sur cet objet avec une des valeurs indiquées ci-avant :


```js
let configColl = new Intl.Locale("en-Latn-US", { collation: "emoji" });
console.log(configColl.collation); // Affichera "emoji" dans la console
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-Intl.Locale.prototype.collation |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Intl.Locale` (en-US)