Panoramica / Sviluppo e codice / JSON in TypeScript
Sviluppo e codice 100% nel browser e offline

JSON in TypeScript

Incolla un JSON di esempio e ottieni interfacce o tipi TypeScript: gli oggetti annidati ricevono un nome, le chiavi mancanti diventano opzionali, i valori misti unioni.

Incolla o scrivi l'input; il risultato appare subito e gli errori sono mostrati sotto.

I tuoi file e dati non lasciano mai il browser: non viene caricato nulla.

JSON

TypeScript

I tipi sono dedotti dai valori incollati. Una chiave assente in alcuni elementi di un array diventa opzionale, i valori misti formano un’unione e un array vuoto diventa unknown[]. Verifica il risultato con i dati reali prima di farci affidamento.

Da una risposta di esempio ai tipi

Lavorare con un’API comincia quasi sempre allo stesso modo: hai una risposta JSON e ti serve un tipo. Incolla la risposta a sinistra e a destra compare il TypeScript corrispondente, pronto per un file .ts. Non devi scrivere nulla a mano e un payload con dieci livelli richiede quanto uno con due.

Dal payload alla dichiarazione

  1. Incolla il JSON nel riquadro di sinistra oppure premi Esempio per vedere come funziona.
  2. Imposta il nome del tipo principale, per esempio User o ApiResponse.
  3. Scegli tra interface e type e spunta export o sola lettura se servono.
  4. Controlla il risultato a destra. Un errore di sintassi viene segnalato al posto dei tipi.
  5. Usa Copia o Scarica .ts per prendere il codice.

Come vengono dedotti i tipi

  • Stringhe, numeri, booleani e null diventano il tipo TypeScript corrispondente.
  • Un oggetto annidato diventa un’interfaccia a sé, col nome della chiave in PascalCase. La chiave shipping_address dà ShippingAddress.
  • Negli array tutti gli elementi vengono fusi. Una chiave presente solo in alcuni è marcata come opzionale con il punto interrogativo, e valori di tipo diverso formano un’unione come string | number.
  • Due oggetti con la stessa identica forma condividono un’interfaccia invece di produrne due copie.
  • Un array vuoto dà unknown[], un oggetto vuoto dà Record<string, unknown>.

I limiti dell’indovinare da un solo campione

Un campione mostra soltanto ciò che contiene. Un campo sempre valorizzato nel tuo esempio può essere null in produzione, e un numero che sembra un id altrove può essere una stringa. Le date arrivano come stringhe e vengono quindi tipizzate string. Considera l’output una prima bozza e rifiniscilo a mano, oppure convalida le risposte reali a runtime se i dati non dipendono da te.

Il tuo payload resta privato

La conversione avviene nella pagina. Risposte di produzione, token e dati personali di un campione incollato non vengono inviati a un server, perciò puoi usare anche dati reali.

Domande frequenti (FAQ)

Incolla il JSON nel riquadro di sinistra. L’interfaccia compare subito a destra. Dai un nome al tipo principale, copia il codice e mettilo in un file .ts.