Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Intl.ListFormat : méthode formatToParts()

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 avril 2021.

La méthode formatToParts() des instances de Intl.ListFormat retourne un tableau d'objets représentant chaque partie de la chaîne formatée qui serait retournée par format(). Elle est utile pour construire des chaînes personnalisées à partir des éléments propres à la locale.

Exemple interactif

const vehicles = ["Motorcycle", "Bus", "Car"];

const formatterEn = new Intl.ListFormat("en", {
  style: "long",
  type: "conjunction",
});

const formatterFr = new Intl.ListFormat("fr", {
  style: "long",
  type: "conjunction",
});

const partValuesEn = formatterEn.formatToParts(vehicles).map((p) => p.value);
const partValuesFr = formatterFr.formatToParts(vehicles).map((p) => p.value);

console.log(partValuesEn);
// Résultat attendu : "["Motorcycle", ", ", "Bus", ", and ", "Car"]"
console.log(partValuesFr);
// Résultat attendu : "["Motorcycle", ", ", "Bus", " et ", "Car"]"

Syntaxe

js
formatToParts(list)

Paramètres

list

Un objet itérable, tel qu'un tableau, contenant des chaînes de caractères. Si vous l'omettez, cela formate un tableau vide, ce qui peut prêter à confusion, il est donc conseillé de toujours passer explicitement une liste.

Valeur de retour

Un tableau (Array) d'objets contenant la liste formatée en fragments. Chaque objet possède deux propriétés, type et value, chacune contenant une chaîne de caractères. La concaténation des chaînes de caractères de value, dans l'ordre fourni, donnera la même chaîne de caractères que format(). La propriété type peut prendre l'une des valeurs suivantes :

literal

Toute chaîne de caractères qui fait partie du modèle de formatage ; par exemple ", ", ", and", etc.

element

Un élément de la liste, exactement tel que fourni.

Exemples

Utiliser la méthode formatToParts()

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

console.table(maListeFormattee.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® 2026 Internationalization API Specification
# sec-Intl.ListFormat.prototype.formatToParts

Compatibilité des navigateurs

Voir aussi