Convertitore JSON in TypeScript gratis
Genera interfacce TypeScript o alias di tipo da qualsiasi oggetto o array JSON. Incolla il tuo JSON e ottieni istantaneamente tipi TypeScript pronti all'uso.
export interface User {
id: number;
name: string;
email: string;
isActive: boolean;
score: number;
tags: string[];
address?: null;
}
export interface Root {
user: User;
createdAt: string;
version: number;
}Usi comuni
- Genera Tipi TypeScript da Risposte APIIncolla una risposta JSON API e genera istantaneamente interfacce TypeScript per proteggere con i tipi il tuo codice frontend.
- Tipi TypeScript per Oggetti di Configurazione e ImpostazioniGenera interfacce TypeScript da file di configurazione JSON per aggiungere la type safety alle impostazioni dell'applicazione.
- Genera Tipi TypeScript da Record di DatabaseConverti i record del database esportati come JSON o i risultati delle query ORM in interfacce TypeScript per la tipizzazione del livello dati.
- Tipa i Dati Mock e i Fixture di TestGenera interfacce TypeScript da dati mock JSON e fixture di test per digitare i tuoi test unitari e le storie di Storybook.
- Tipa le Risposte API di Terze PartiGenera interfacce TypeScript dalle risposte API di terze parti dove i tipi ufficiali mancano o sono obsoleti.
Come funziona
Questo strumento usa un algoritmo di inferenza di tipo ricorsivo scritto a mano senza librerie esterne — JSON.parse per validare e analizzare l'input, poi un attraversamento personalizzato che percorre ogni valore nell'albero JSON ed emette dichiarazioni di interfaccia o tipo TypeScript direttamente nel browser. Nulla viene inviato a un server.
- 1JSON analizzato e validatoIl tuo input viene passato a JSON.parse. Se fallisce, l'errore di analisi esatto viene mostrato immediatamente sotto l'input. Un'analisi riuscita produce un albero di valori tipizzato che guida il resto della conversione.
- 2Inferenza di tipo ricorsivaUna funzione ricorsiva getType attraversa ogni nodo: i primitivi mappano a string, number, boolean, o null; gli oggetti attivano una nuova interfaccia con nome; gli array di oggetti hanno le loro chiavi unite tra tutti gli elementi così le chiavi presenti solo in alcuni elementi diventano opzionali e i tipi di valore in conflitto vengono uniti con |.
- 3Denominazione di interfaccia sicura da collisioniOgni oggetto annidato ottiene un nome PascalCase derivato dalla sua chiave JSON (snake_case, kebab-case, e spazi vengono tutti normalizzati). Se due oggetti strutturalmente diversi condividerebbero lo stesso nome, viene aggiunto un suffisso numerico (Data, Data2, …) invece di sovrascrivere silenziosamente la definizione precedente.
- 4Output reso e scaricabileLe interfacce annidate vengono emesse per prime, poi il tipo radice, formattato come export interface o export type a seconda della tua selezione. Il risultato può essere copiato negli appunti o scaricato come file .ts — tutto costruito con un Blob standard e senza alcuna comunicazione con il server.
Strumenti correlati
JSON Schema in Modulo
Incolla un JSON Schema e ottieni un modulo live e funzionante — campi testo, numero, casella di controllo, menu a discesa ed elenco — poi copia il JSON prodotto dai tuoi input. Ideale per prototipare il corpo delle richieste API. Funziona nel tuo browser.
Test Velocità di Digitazione (WPM)
Misura la tua velocità di digitazione (WPM) e accuratezza con test a tempo, conteggio parole, citazioni, personalizzati e zen. WPM in tempo reale, velocità grezza, coerenza, grafico dei risultati, più lingue e feedback per ogni carattere — tutto nel tuo browser.
Generatore CSS clamp()
Genera un valore CSS clamp() fluido per tipografia e spaziatura responsive. Imposta dimensioni minima/massima e intervallo di viewport, visualizza un'anteprima live e copia il CSS in un'unica riga.