UTILS.
Privati per natura
TS

JSON in TypeScript

Genera interfacce TypeScript da un campione JSON, inferendo i tipi in modo ricorsivo.

I tuoi file restano su questo dispositivo

I file vengono elaborati nel browser, mai caricati su un server. Il sito scarica il codice e le risorse necessarie. Senza account né tracciamento.

Usa Scarica per salvare questo strumento in un unico file HTML da usare offline.

Privacy →
output

Prova un esempio svolto

Esempio

Incolla [{"id":1},{"id":2,"note":"late"}]. Il risultato è type Root = RootItem[]; e un’interfaccia RootItem con id: number e note?: string, perché note manca nel primo elemento.

Da ricordare

I tipi derivano solo dal campione incollato. Un campo che qui è una stringa può essere null in altre risposte e i numeri non sono distinti tra interi e decimali, quindi confronta il risultato con la documentazione dell’API.

Informazioni su questo strumento

Incolla un campione JSON, ad esempio una risposta di un’API, e ottieni le interfacce TypeScript corrispondenti, generate interamente nel browser. Ogni elemento di un array viene esaminato: i campi assenti in alcuni elementi diventano opzionali e i valori di tipi diversi diventano unioni.

Domande frequenti

Come vengono gestiti gli oggetti annidati?
Ogni oggetto annidato diventa un’interfaccia a sé, chiamata in PascalCase come la sua chiave. Gli oggetti dentro gli array ricevono il suffisso Item, ad esempio TagsItem.
Come vengono tipizzati gli array?
Ogni elemento viene esaminato. Gli oggetti si uniscono in un’unica interfaccia, i campi assenti in alcuni sono segnati come opzionali con ? e i valori misti diventano un’unione come (string | number)[]. Gli array vuoti diventano unknown[].

Altri strumenti