Vai al contenuto
ToolMug

Convertitore da JSON a TypeScript

Trasforma un esempio JSON — una risposta API, un file di configurazione, una fixture — in interfacce TypeScript da incollare nel tuo codice. Gli oggetti annidati hanno tipi con nome propri e le differenze tra gli elementi di un array diventano tipi facoltativi o unione.

Funziona nel tuo browser: nulla di ciò che inserisci viene caricato

Come si usa

  1. Incolla un esempio JSON, oppure fai clic su «Carica esempio».
  2. Imposta il nome del tipo radice.
  3. Scegli tra interfacce e type alias.
  4. Copia o scarica i tipi generati.

Opzioni spiegate

Nome del tipo radice
Il nome del tipo di primo livello, per esempio User o ApiResponse. I tipi annidati prendono il nome dalle rispettive chiavi — address diventa Address e gli elementi di posts diventano Post.
Usa type invece di interface
Genera type alias (type User = { … }) invece di interfacce. Per dati semplici funzionano allo stesso modo.

Esempi

{"id": 1, "tags": ["a"], "owner": {"name": "Ada"}} diventa:

export interface Owner {
  name: string;
}

export interface Root {
  id: number;
  tags: string[];
  owner: Owner;
}

Domande frequenti

Come vengono gestiti gli array di oggetti?

Tutti gli elementi vengono uniti in un unico tipo. Una chiave presente solo in alcuni elementi diventa facoltativa (key?) e un valore che a volte è null diventa un'unione come string | null.

Perché un campo è tipizzato come unknown?

Nell'esempio conteneva solo null, quindi il suo tipo reale non può essere dedotto. Sostituisci unknown con il tipo corretto, oppure incolla un esempio in cui il campo ha un valore.

Interi e decimali sono tipi diversi?

Non in TypeScript — entrambi diventano number. Gli output Go, Rust e Python invece li distinguono.

Il mio JSON viene caricato online?

No. I tipi vengono generati nel tuo browser, quindi le risposte API con dati reali restano sul tuo dispositivo.

Privacy

Questo strumento funziona interamente nel tuo browser. File e testi vengono elaborati sul tuo dispositivo e non vengono mai caricati sui nostri server.

Strumenti correlati