recursal/MDN huggingface dataset:
Intl.Locale.prototype.minimize()
================================

La méthode **`Intl.Locale.prototype.minimize()`** tente de retirer les informations qui auraient pu être ajoutée à une locale lors d'un appel à `Locale.maximize()` (en-US).

Exemple interactif
------------------

Syntaxe
-------


```js
locale.minimize();
```

### Valeur de retour

Une instance `Locale` (en-US) dont la propriété `baseName` renvoie le résultat de l'exécution de l'algorithme de suppression des composantes probables sur `locale.baseName`.

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

Cette méthode effectue l'opération inverse de `maximize()` (en-US), en retirant les fragments de langue/script ou de région qui sont superflus. Ainsi, `"en-Latn"` pourra être minimisé en `"en"` car l'anglais s'écrit uniquement à l'aide de l'alphabet latin.

`minimize()` ne modifie pas les éventuelles extensions décrites dans la chaîne de locale (après le `"-u"`) ou via l'objet de configuration (elle ne modifie donc pas les valeurs de `Locale.hourCycle` (en-US), `Locale.calendar` (en-US) et `Locale.numeric` (en-US)).

Exemples
--------


```js
let maLocale = new Intl.Locale("fr-Latn-FR", {
  hourCycle: "h24",
  calendar: "gregory",
});
console.log(maLocale.baseName); // Affiche "fr-Latn-FR"
console.log(maLocale.toString()); // Affiche "fr-Latn-FR-u-ca-gregory-hc-h24"
let maLocMinimized = maLocale.minimize();

console.log(maLocMinimized.baseName);
// Affiche "fr" car le français est écrit uniquement avec l'alphabet latin et
// parlé le plus largement en France

console.log(maLocMinimized.toString());
// Affiche "fr-u-ca-gregory-hc-h24". On voit ici que les extensions
// (décrites après "-u") restent inchangées.
```

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

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

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

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

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

* `Intl.Locale` (en-US)
* `Intl.Locale.baseName` (en-US)
Intl.Locale.prototype.textInfo
==============================

La propriété **`Intl.Locale.prototype.textInfo`** est un accesseur qui renvoie le sens d'écriture horizontal : `ltr` (pour gauche à droite) ou `rtl` (pour droite à gauche) pour la locale portée par l'instance de `Locale`.

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

Renvoie les informations de texte associées à la locale courante selon les éléments de disposition UTS 35.

Exemples
--------

### Obtenir les informations textuelles d'une locale


```js
let ar = new Intl.Locale("ar");
console.log(ar.textInfo); // affiche { direction: "rtl" }
console.log(ar.textInfo.direction); // affiche "rtl"
```



```js
let es = new Intl.Locale("es");
console.log(es.textInfo); // affiche { direction: "ltr" }
console.log(es.textInfo.direction); // affiche "ltr"
```

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

| Specification |
| --- |
| Intl Locale Info Proposal # sec-Intl.Locale.prototype.getTextInfo |

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

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

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

* `Intl.Locale`
Intl.Locale.prototype.timeZones
===============================

La propriété **`Intl.Locale.prototype.timeZones`** est un accesseur qui renvoie un tableau des fuseaux horaires pris en charge pour la locale représentée par l'instance `Intl.Locale` courante.

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

Renvoie un tableau avec les fuseaux horaires pris en charge et associés à l'objet `Locale` courant. Les éléments du tableau sont représentés au format IANA.

**Note :** Si l'identifiant de langue Unicode ne contient pas le tiret indiquant la sous-balise de région, la valeur de retour sera `undefined`.

Exemples
--------

### Obtenir les fuseaux horaires pris en charge et associés à une locale


```js
let arEG = new Intl.Locale("ar-EG");
console.log(arEG.timeZones); // affiche ["Africa/Cairo"]
```



```js
let jaJP = new Intl.Locale("ja-JP");
console.log(jaJP.timeZones); // affiche ["Asia/Tokyo"]
```



```js
let ar = new Intl.Locale("ar");
console.log(ar.timeZones); // affiche undefined
```

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

| Specification |
| --- |
| Intl Locale Info Proposal # sec-Intl.Locale.prototype.getTimeZones |

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

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

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

* `Intl.Locale`
* La base de données IANA pour les fuseaux horaires
Intl.ListFormat.prototype.format()
==================================

La méthode **`format()`** renvoie une chaîne de caractères représentant la liste passée en argument, mise en forme selon la langue choisie (lors de la construction de l'objet `Intl.ListFormat`).

Exemple interactif
------------------

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

La méthode **`format()`** renvoie une chaîne de caractères qui a été formatée en fonction des paramètres fournis à l'objet `Intl.ListFormat`. Les paramètres `locales` et `options` permettent de personnaliser le comportement de `format()` et de gérer différentes conventions linguistiques au sein d'une application, notamment pour la mise en forme des listes.

Syntaxe
-------


```js
listFormat.format([list]);
```

### Paramètres

**`list`**

Un objet itérable (ex. un tableau / `Array`).

### Valeur de retour

Une chaîne de caractères représentant les éléments de la liste et mise en forme en fonction de la langue souhaitée (grâce au paramètre `locales` passé au constructeur `Intl.ListFormat`).

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-Intl.ListFormat.prototype.format |

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

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

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

* `Intl.ListFormat`
Intl.ListFormat.supportedLocalesOf()
====================================

The **`Intl.ListFormat.supportedLocalesOf()`** renvoie, parmi les locales fournies, un tableau contenant les locales supportées pour le formatage des listes et qui ne nécessitent pas d'utiliser la locale par défaut de l'environnement.

Syntaxe
-------


```js
Intl.ListFormat.supportedLocalesOf(locales[, options])
```

### Paramètres

`locales`

Une chaîne de caractères qui est une balise de langue BCP 47 ou bien un tableau de telles chaînes. Pour plus d'informations concernant la forme générale de l'argument `locales`, voir la page `Intl`.

`options`Facultatif

Paramètre facultatif. Un objet qui peut posséder les propriétés suivantes :

`localeMatcher`

L'algorithme utilisé pour la correspondance entre chaînes de caractères. Les valeurs possibles sont `"lookup"` et `"best fit"`. La valeur par défaut est `"best fit"`. Pour plus d'informations, voir la page `Intl`.


### Valeur de retour

Un tableau de chaînes de caractères qui représente un sous-ensemble des balises de langues qui sont prises en charge pour le formatage des listes sans qu'il faille utiliser la locale par défaut de l'environnement d'exécution.

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

Cette méthode renvoie un tableau qui est un sous-ensemble des balises de locales fournies avec l'argument `locales`. Les balises renvoyées sont celles supportées par l'environnement navigateur en termes de formatage des listes et qui ne nécessitent pas d'utiliser la locale par défaut.

Exemples
--------

### Utiliser `supportedLocalesOf`

Si on dispose d'un environnement (un navigateur par exemple) qui supporte le formatage des listes dans les locales indonésienne, allemande mais pas balinaise, `supportedLocalesOf` renvoie les balises pour l'indonésien et l'allemand quand bien même le formatage des listes pinyin n'est pas utilisée avec l'indonésien et qu'il n'existe pas une version spécifique de l'allemand pour l'Indonésie. On illustre ici l'algorithme `"lookup"`. SI on utilisait `"best fit"` pour trouver les locales correspondantes, on aurait pu avoir une balise supplémentaire pour le balinais en plus car la plupart des balinais comprennent l'indonésien.


```js
const locales = ["ban", "id-u-co-pinyin", "de-ID"];
const options = { localeMatcher: "lookup" };
console.log(Intl.ListFormat.supportedLocalesOf(locales, options).join(", "));
// → "id-u-co-pinyin, de-ID"
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-Intl.ListFormat.supportedLocalesOf |

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

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

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

* `Intl.ListFormat`
Intl.ListFormat.prototype.resolvedOptions()
===========================================

La méthode **`Intl.ListFormat.prototype.resolvedOptions()`** renvoie un nouvel objet dont les propriétés reflètent les options de locale et de style calculées à l'initialisation de l'objet `ListFormat`.

Syntaxe
-------


```js
listFormat.resolvedOptions();
```

### Valeur de retour

Un nouvel objet dont les propriétés reflètent les options de locale et de style calculées lors de l'initialisation de l'objet `ListFormat`.

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

L'objet renvoyé par `resolvedOptions()` possède les propriétés suivantes :

`locale`

La balise de langue BCP 47 qui est réellement utilisée. Si des extensions Unicode étaient fournies avec la balise d'origine et sont supportées pour la locale utilisée, les paires de clés-valeurs seront incluses dans `locale`.

`style`

La valeur fournie au constructeur via l'argument `options` ou la valeur utilisée par défaut (`"long"`). Cette propriété peut valoir `"long"`, `"short"` ou `"narrow"`.

`type`

La valeur fournie au constructeur via l'argument `options` ou la valeur par défaut (`"conjunction"`). Cette propriété peut valoir `"conjunction"`, `"disjunction"` ou `"unit"`.

Exemples
--------


```js
const deListFormatter = new Intl.ListFormat("de-DE", { style: "short" });

const usedOptions = de.resolvedOptions();
console.log(usedOptions.locale); // "de-DE"
console.log(usedOptions.style); // "short"
console.log(usedOptions.type); // "conjunction" (la valeur par défaut)
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-Intl.ListFormat.prototype.resolvedoptions |

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

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

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

* `Intl.ListFormat`
* `Intl.NumberFormat.prototype.resolvedOptions()` (en-US)
* `Intl.Collator.prototype.resolvedOptions()` (en-US)
* `Intl.DateTimeFormat.prototype.resolvedOptions()` (en-US)
* `Intl.PluralRules.prototype.resolvedOptions()` (en-US)
Constructeur Intl.ListFormat()
==============================

Le constructeur **`Intl.ListFormat()`** permet de créer des objets `Intl.ListFormat` pour le formatage de listes adapté à la locale et aux options fournies.

Exemple interactif
------------------

Syntaxe
-------


```js
new Intl.ListFormat();
new Intl.ListFormat(locales);
new Intl.ListFormat(locales, options);
```

### Paramètres

`locales` Facultatif

Une chaîne de caractères représentant une balise de langue BCP 47 ou un tableau de telles balises. Pour la forme générale et l'interprétation de cet argument, voir la page `Intl`.

`options` Facultatif

Un objet avec une ou plusieurs des propriétés suivantes :

`localeMatcher`

L'algorithme de correspondance des locales à utiliser. Les valeurs possibles sont "`lookup`" et "`best fit`" ; la valeur par défaut est "`best fit`". Pour plus d'information, voir la page `Intl`.

`type`

Le format de sortie produit. Les valeurs possibles sont "`conjunction`" qui indique une liste additive (par exemple "`A, B, et C`"), c'est la valeur par défaut, ou "`disjunction`" qui indique une liste d'options distinctes (par exemple, "`A, B, ou C`"), ou "`unit`" qui indique une liste de valeurs avec des unités (par exemple, "`5 kg, 12 L`").

`style`

La longueur du message formaté. Les valeurs possibles sont "`long`", la valeur par défaut (par exemple "`A, B, et C`") ; "`short`" (par exemple "`A, B, C`"), ou "`narrow`" (par exemple, "`A B C`"). Lorsque la valeur de `style` est "`short`" ou "`narrow`", seule la valeur "`unit`" est autorisée pour l'option "type".


Exemples
--------

### Utilisation de format()

L'exemple suivant illustre comment créer un formateur de liste basé sur la langue française.


```js
const list = ["Moto", "Bus", "Car"];

console.log(
  new Intl.ListFormat("fr", { style: "long", type: "conjunction" }).format(
    list,
  ),
);
// > Moto, Bus et Car

console.log(
  new Intl.ListFormat("fr", { style: "short", type: "disjunction" }).format(
    list,
  ),
);
// > Moto, Bus ou Car

console.log(
  new Intl.ListFormat("fr", { style: "narrow", type: "unit" }).format(list),
);
// > Moto Bus Car
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-intl-listformat-constructor |

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

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

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

* `Intl.ListFormat`
* `Intl`
Intl.ListFormat.prototype.formatToParts()
=========================================

La méthode **`Intl.ListFormat.prototype.formatToParts()`** renvoie un tableau (`Array`) d'objets représentants les différentes composantes de la chaine de caractères qui est le résultat du formatage de la liste (selon les options de locale et de style indiquées).

Syntaxe
-------


```js
Intl.ListFormat.prototype.formatToParts(list);
```

### Paramètres

`list`

Un tableau (`Array`) de valeurs à mettre en forme selon une locale et des options de style.

### Valeur de retour

Un tableau (`Array`) de fragments composants la chaîne de caractères pour la liste formatée.

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

Alors que la méthode `Intl.ListFormat.prototype.format()` (en-US) renvoie une chaîne de caractères avec la liste formatée (en fonction de la locale et des options de style), `formatToParts()` renvoie un tableau des différentes composantes de cette chaîne.

Chaque élément du tableau résultant possède deux propriétés : `type` et `value`. La propriété `type` pourra valoir `"element"` (pour indiquer une valeur de la liste) ou `"literal"` (pour indiquer un élément linguistique). La propriété `value` fournit quant à elle le contenu du fragment sous forme d'une chaîne de caractères.

Les options de locale et de style utilisées pour le formatage sont fournies lors de la construction de l'instance `Intl.ListFormat`.

Exemples
--------


```js
const fruits = ["Apple", "Orange", "Pineapple"];
const myListFormat = new Intl.ListFormat("en-GB", {
  style: "long",
  type: "conjunction",
});

console.table(myListFormat.formatToParts(fruits));
// [
// { "type": "element", "value": "Apple" },
// { "type": "literal", "value": ", " },
// { "type": "element", "value": "Orange" },
// { "type": "literal", "value": ", and " },
// { "type": "element", "value": "Pineapple" }
// ]
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-Intl.ListFormat.prototype.formatToParts |

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

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

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

* `Intl.ListFormat`
* `Intl.ListFormat.prototype.format()` (en-US)
* `Intl.RelativeTimeFormat.prototype.formatToParts()` (en-US)
* `Intl.NumberFormat.prototype.formatToParts()` (en-US)
* `Intl.DateTimeFormat.prototype.formatToParts()` (en-US)
Intl.PluralRules.supportedLocalesOf()
=====================================

La méthode **`Intl.PluralRules.supportedLocalesOf()`** renvoie un tableau contenant les locales prises en charge, parmi celles passées en argument, pour les règles de nombre (sans avoir à utiliser la locale par défaut du système d'exécution).

Syntaxe
-------


```js
Intl.PluralRules.supportedLocalesOf(locales[, options])
```

### Paramètres

`locales`

Une chaîne de caractères représentant une balise de langue BCP 47 ou bien un tableau de telles chaînes. Pour la forme générale de l'argument `locales`, se référer à la page Intl.

`options` Facultatif

Optionnel. Un objet pouvant contenir la propriété suivante :

`localeMatcher`

L'algorithme de correspondance à utiliser pour la locale. Les valeurs possibles sont `"lookup"` et `"best fit"` ; le défaut est `"best fit"`. Pour des informations sur cette option, voir la page `Intl`.


### Valeur de retour

Un tableau de chaînes de caractères représentant le sous-ensemble de balises de langues prises en charge pour le formatage avec les règles de nombre (sans qu'il soit nécssaire d'utiliser la locale par défaut du système d'exploitation).

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

Cette méthode renvoie un tableau contenant un sous-ensemble des balises de langue fournies dans l'argument `locales`. Les balises de langue sont celles qui sont prises en charge par l'environnement pour le formatage avec les règles de nombre et pour lesquelles la locale respecte l'algorithme de correspondance indiqué. Les locales de ce tableau évitent d'avoir à utiliser la locale du système d'exécution par défaut.

Exemples
--------

Dans l'hypothèse où on utilise un système prenant en charge l'indonésien, l'allemand mais pas le balinais pour le formatage avec les règles de nombre, `supportedLocalesOf` renvoie les balises de langue indonésienne et allemande inchangées bien que la collation `pinyin` ne soit pas pertinente ni utilisée avec l'indonésien (et qu'il est peu probable qu'une variante indonésienne pour l'allemand soit prise en charge). On notera que l'algorithme de correspondance `"lookup"` est utilisé ici. L'algorithme `"best fit"` aurait pu déterminer que l'indonésien aurait pu remplacer le balinais car la plupart des personnes parlant le balinais comprend également l'indonésien, la fonction aurait alors pu remplacer la balise de langue balinaise.


```js
var locales = ["ban", "id-u-co-pinyin", "de-ID"];
var options = { localeMatcher: "lookup" };
console.log(Intl.PluralRules.supportedLocalesOf(locales, options).join(", "));
// → "id-u-co-pinyin, de-ID"
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-intl.pluralrules.supportedlocalesof |

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

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

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

* `Intl.PluralRules`
Intl.PluralRules.prototype.resolvedOptions()
============================================

La méthode **`Intl.PluralRules.prototype.resolvedOptions()`** renvoie un nouvel objet dont les propriétés reflètent la locale et les options de formatage relatives aux règles de nombre calculées lors de l'initialisation de l'objet `PluralRules`.

Syntaxe
-------


```js
pluralRule.resolvedOptions();
```

### Valeur de retour

Un nouvel objet dont les propriétés reflètent la locale et les options de formatage relatives aux règles de nombre calculées lors de l'initialisation de l'objet `PluralRules`.

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

L'objet produit possède les propriétés suivantes :

`locale`

La balise de langue BCP 47 pour la locale réellement utilisée. Si une extension Unicode a été demandée dans la balise de langue BCP 47 ayant menée à cette locale, les paires clé/valeur qui ont été demandées et qui sont prises en charge dans cette locale sont incluses dans l'objet `locale`.

`pluralCategories`

Un tableau `Array` des règles de nombre utilisée pour la langue donnée.

`type`

Le type de règle utilisée (`cardinal` ou `ordinal`).

Seul l'un de ces deux groupes de propriétés est inclus :

`minimumIntegerDigits`, `minimumFractionDigits`, `maximumFractionDigits`

Les valeurs fournies pour ces propriétés via l'argument `options` ou les valeurs par défaut. Ces propriétés sont uniquement présentes si aucunes des propriétés `minimumSignificantDigits` ou `maximumSignificantDigits` n'a été fournie dans l'argument `options`.

`minimumSignificantDigits`, `maximumSignificantDigits`

Les valeurs fournies par ces propriétés via l'argument `options` ou les valeurs par défaut. Ces propriétés sont uniquement présentes si au moins l'une d'entre elles a été fournie dans l'argument `options`.

Exemples
--------

### Utiliser `resolvedOptions()`


```js
var de = new Intl.PluralRules("de-DE");
var usedOptions = de.resolvedOptions();

usedOptions.locale; // "de-DE"
usedOptions.maximumFractionDigits; // 3
usedOptions.minimumFractionDigits; // 0
usedOptions.minimumIntegerDigits; // 1
usedOptions.pluralCategories; // Array [ "one", "other" ]
usedOptions.type; // "cardinal"
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-intl.pluralrules.prototype.resolvedoptions |

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

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

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

* `Intl.PluralRules`
Intl.PluralRules.selectRange()
==============================

La méthode **`Intl.PluralRules.prototype.selectRange()`** reçoit deux valeurs en arguments et renvoie une chaîne de caractères qui indique la règle de nombre (pluriel) à utiliser pour un formatage tenant compte de la locale.

Syntaxe
-------


```js
selectRange(debutIntervalle, finIntervalle);
```

### Valeur de retour

Une chaîne de caractères qui représente la catégorie grammaticale de nombre. Ce peut être une chaîne parmi `"zero"`, `"one"`, `"two"`, `"few"`, `"many"` ou `"other"` et qui est pertinente pour la locale dont les règles de localisation sont définies dans les règles de pluriel des langues LDML.

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

Cette fonction sélectionne une catégorie de nombre selon les options de locale et de formatage portées par l'objet `Intl.PluralRules`.

Exemples
--------

### Utiliser `selectRange()`


```js
new Intl.PluralRules("sl").selectRange(102, 201);
// → 'few'

new Intl.PluralRules("pt").selectRange(102, 102);
// → 'other'
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-intl.pluralrules.prototype.selectrange |

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

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

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

* `Intl.PluralRules`
Intl.PluralRules.select()
=========================

La méthode **`Intl.PluralRules.prototype.select`** renvoie une chaîne de caractères qui indique la règle de nombre utilisée pour le formatage relatif à la locale.

Syntaxe
-------


```js
pluralRule.select(nombre);
```

### Paramètres

`nombre`

Le nombre pour lequel on souhaite obtenir la règle de nombre associée.

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

Cette fonction permet de sélectionner une règle de nombre en fonction de la locale et des options de formatage choisies via un objet `PluralRules`.

Exemples
--------


```js
new Intl.PluralRules("ar-EG").select(0);
// → 'zero'

new Intl.PluralRules("ar-EG").select(1);
// → 'one'

new Intl.PluralRules("ar-EG").select(2);
// → 'two'

new Intl.PluralRules("ar-EG").select(6);
// → 'few'

new Intl.PluralRules("ar-EG").select(18);
// → 'many'
```

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

| Specification |
| --- |
| ECMAScript Internationalization API Specification # sec-intl.pluralrules.prototype.select |

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

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

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

* `Intl.PluralRules`