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.Locale.prototype.numeric
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 2020.
La propriétéIntl.Locale.prototype.numeric est une propriété fournie par un accesseur et qui indique si la locale possède une collation spécifique pour les caractères numériques (la collation étant la méthode qui permet d'ordonner des chaînes de caractères entre elles).
Dans cet article
Description
À l'instar deIntl.Locale.caseFirst,numeric représente une modification des règles de collation utilisée par la locale.numeric est un booléen (true oufalse). Lorsque cette propriété vautfalse, il n'y a pas de gestion particulière des chiffres et si cette propriété vauttrue, cela indique que les caractères numériques sont pris en compte lors de la collation des chaînes. Ainsi, les séquences de chiffres décimaux seront comparés comme des nombres. Ainsi, la chaîne de caractères"A-21" sera considérée inférieure à"A-123".
Exemples
>Définirnumeric grâce à la chaîne de description de la locale
Selonla spécification Unicode sur les chaînes de caractères décrivant les locales, les valeurs denumeric sont associées à la clékn. Pour utiliser cette clé dans la chaîne de description de la locale (le premier argument deIntl.Locale), après la chaîne de base, on pourra ajouter un suffixe avec"-u" afin d'indiquer la présence d'une extension, puis"-kn" afin de préciser l'extension en question et enfin la valeur souhaitée pour cette extension. Si on veut quenumeric soittrue, il suffit d'ajouter la clékn. Pour indiquer la valeurfalse, il faudra explicitement ajouter"-false".
let numericViaStr = new Intl.Locale("fr-Latn-FR-u-kn-false");console.log(numericStr.numeric);// Affichera "false" dans la consoleDéfinirnumeric via l'objet de configuration de l'instance
Le constructeurIntl.Locale possède un deuxième argument, optionnel, qui est un objet permettant de configurer la locale. Les propriétés de cet objet sont utilisées comme extensions pour la locale ; les clés des propriétés sont les noms des extensions et leurs valeurs sont celles utilisées pour chaque extension. On peut donc utiliser la propriéténumeric sur cet objet afin de définir le système de numération à utiliser pour cette locale.
let numericViaObj = new Intl.Locale("en-Latn-US", { numeric: true });console.log(us12hour.numeric);// Affichera "true" dans la consoleSpécifications
| Specification |
|---|
| ECMAScript® 2026 Internationalization API Specification> # sec-Intl.Locale.prototype.numeric> |