DT Dev Tools

JSON till TypeScript

Härled TypeScript-gränssnitt från ett JSON-exempel lokalt. Den gratis generatorn hanterar nästlade objekt, arrayer och unioner utan att ladda upp dina data.

🔒 Körs helt i din webbläsare — ingenting laddas upp

Advertisement

Vad JSON till TypeScript gör

JSON till TypeScript läser ett JSON-exempel och härleder starkt typade TypeScript-gränssnitt som beskriver dess struktur. Verktyget går rekursivt igenom värdet: objekt blir namngivna gränssnitt, primitiva värden blir motsvarande typer string, number, boolean eller null, och arrayer blir elementtyper inom hakparenteser. När en array innehåller element av olika typer slår generatorn ihop dem till en union så att resultatet fortfarande stämmer med originaldata. Det är användbart när du använder ett API utan publicerade typer, när du vill lägga till typsäkerhet i en äldre nyttolast eller när du vill göra en snabb testdatamängd till en återanvändbar modell.

Arrayer med objekt hanteras noggrant. I stället för att bara typa det första elementet slår verktyget ihop alla objekt i arrayen till ett enda gränssnitt och samlar unionen av nycklar. Nycklar som saknas i vissa element markeras som valfria med ett avslutande frågetecken, vilket speglar hur verkliga svar bara innehåller fält när de är ifyllda. Nästlade objekt lyfts till egna namngivna gränssnitt som härleds från egenskapens namn, så att resultatet läses som handskrivna modeller och inte som en enda djupt inbäddad typ.

Privat arbetsflöde i webbläsaren

All tolkning och härledning sker i din webbläsare med JavaScript på klientsidan. Verktyget laddar inte upp din JSON, dina API-svar, identifierare, token eller kundliknande exempel till någon server och kräver inget konto. Den rent lokala modellen är viktig eftersom data som klistras in i en typgenerator ofta är ett verkligt produktionssvar som fångats vid felsökning. Att behålla arbetet på din dator minskar riskerna och gör resultatet omedelbart eftersom det inte finns någon nätverksresa mellan inklistring och utdata.

Gränssnittet placerar JSON-indata, rotnamnet och de genererade gränssnitten nära varandra så att du kan kontrollera härledningen innan du kopierar. Resultaten bör ändå granskas innan de checkas in: ett enda exempel kan inte avslöja alla valfria fält, nullbara värden eller enum-värden som det verkliga API:et kan returnera, så vidga typerna där din domänkunskap säger att ett fält kan saknas eller anta fler former än exemplet visar.

Praktiska tips

Ange det mest kompletta exemplet du har, helst med ifyllda valfria fält och en array med fler än ett element, så att sammanslagningslogiken kan upptäcka unioner och valfrihet. Byt namn på rotgränssnittet så att det passar din domänmodell innan du genererar. Överväg efter kopieringen att skärpa löst härledda typer: ersätt breda string-fält med literalunioner för kända enum-värden, markera identifierare som branded types om din kodbas använder dem och kontrollera att fält som härledningen typat som null i stället bör vara en nullbar union. Härledning i webbläsaren är utmärkt för ett snabbt första utkast, men de slutliga typerna ska spegla det kontrakt som din applikation faktiskt är beroende av.

Hur man använder

  1. Klistra in JSONLägg till ett representativt JSON-objekt eller en array som exempel.
  2. Namnge rotenVälj ett namn på rotgränssnittet och generera sedan gränssnitten.
  3. Kopiera gränssnittenGranska det härledda TypeScript-resultatet och kopiera eller ladda ned det.

Vanliga frågor

Hanteras nästlade objekt och arrayer?
Ja. Härledningen går rekursivt in i nästlade objekt och arrayer och namnger underordnade gränssnitt efter deras egenskapsnycklar.
Hur hanteras arrayer med blandade element?
Elementtyperna slås ihop till en union, och för arrayer med objekt slås alla nycklar ihop så att valfria fält markeras med ett frågetecken.
Laddas min JSON upp?
Nej. Härledningen körs helt i din webbläsare med JavaScript på klientsidan.
Advertisement