# generaltranslation: General Translation Core SDK: formatListToParts URL: https://generaltranslation.com/it/docs/core/class/methods/formatting/format-list-to-parts.mdx --- title: formatListToParts description: Riferimento API per il metodo formatListToParts, che formatta gli elenchi in parti preservando i tipi originali --- ## Panoramica Il metodo `formatListToParts` formatta un array in parti specifiche dell’impostazione regionale, inserendo separatori testuali tra gli elementi e mantenendo i tipi originali di ciascun elemento. A differenza di `formatList`, che restituisce una stringa semplice, questo metodo restituisce un `Array` — il che lo rende ideale per array misti che contengono stringhe, numeri, oggetti o elementi JSX. ```typescript const gt = new GT({ locales: ['en'] }); const parts = gt.formatListToParts(['apple', 42, { type: 'fruit' }]); // Returns: ['apple', ', ', 42, ', and ', { type: 'fruit' }] ``` ## Riferimento ### Parametri | Name | Type | Description | | ---------- | ------------------------ | ----------------------------------------- | | `array` | `Array` | L'array di elementi da formattare | | `options?` | `ListFormatPartsOptions` | Configurazione di formattazione opzionale | ### ListFormatPartsOptions Estende `Intl.ListFormatOptions` con un'opzione aggiuntiva per specificare l'impostazione regionale: | Nome | Tipo | Descrizione | | ---------- | ------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- | | `locales?` | `string \| string[]` | Sovrascrive le impostazioni regionali per la formattazione (per impostazione predefinita usa quelle dell'istanza) | | `type?` | `'conjunction' \| 'disjunction' \| 'unit'` | Tipo di formattazione dell'elenco (predefinito: `'conjunction'`) | | `style?` | `'long' \| 'short' \| 'narrow'` | Stile di formattazione dell'elenco (predefinito: `'long'`) | ### Restituisce `Array` - Un array contenente gli elementi originali alternati a separatori di stringa specifici dell'impostazione regionale. *** ## Esempi ### Formattazione di base delle liste ```typescript copy import { GT } from 'generaltranslation'; const gt = new GT({ locales: ['en'] }); // Congiunzione (predefinita) — lista con "e" console.log(gt.formatListToParts(['A', 'B', 'C'])); // Output: ['A', ', ', 'B', ', e ', 'C'] // Disgiunzione — lista con "o" console.log(gt.formatListToParts(['A', 'B', 'C'], { type: 'disjunction' })); // Output: ['A', ', ', 'B', ', o ', 'C'] ``` ### Array con tipi misti ```typescript copy // Numeri e oggetti vengono preservati console.log(gt.formatListToParts(['apple', 42, { type: 'fruit' }])); // Output: ['apple', ', ', 42, ', e ', { type: 'fruit' }] ``` ### Varianti di stile ```typescript copy // Stile breve console.log(gt.formatListToParts(['first', 'second'], { style: 'short' })); // Output: ['first', ' & ', 'second'] // Stile unità console.log(gt.formatListToParts(['1km', '2mi'], { type: 'unit' })); // Output: ['1km', ', ', '2mi'] ``` ### Formattazione specifica per l'impostazione regionale ```typescript copy // Disgiunzione in spagnolo console.log(gt.formatListToParts(['red', 'green', 'blue'], { locales: ['es'], type: 'disjunction' })); // Output: ['red', ', ', 'green', ' o ', 'blue'] ``` *** ## Note * I tipi di elementi originali vengono preservati: tra gli elementi vengono inseriti solo separatori testuali * Questa è la differenza principale rispetto a `formatList`, che restituisce una stringa semplice * Particolarmente utile per il rendering di array con tipi misti in framework UI come React * Il metodo usa internamente `Intl.ListFormat` nativo del browser * `type: 'conjunction'` produce elenchi con "e", `'disjunction'` produce elenchi con "o" e `'unit'` produce elenchi in stile unità ## Passaggi successivi * Consulta la documentazione di [`Intl.ListFormat`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) per ulteriori opzioni * Vedi [`format-num`](/docs/core/class/methods/formatting/format-num) per la formattazione dei numeri * Vedi la versione autonoma di [`format-list-to-parts`](/docs/core/functions/formatting/format-list-to-parts) per l'uso senza un'istanza di GT * Vedi [`format-message`](/docs/core/class/methods/formatting/format-message) per la formattazione dei messaggi con interpolazione di liste