Ratgeber

JSON in TypeScript oder Python umwandeln

Fügen Sie einen gültigen JSON-Text ein, wählen Sie TypeScript oder Python und lassen Sie daraus die passende Struktur erzeugen. Wenn Sie keinen Namen für die oberste Ebene angeben, wird dafür `Root` verwendet.

Tool JSON zu Code Konverter

Fügen Sie einen gültigen JSON-Text ein, wählen Sie TypeScript oder Python und lassen Sie daraus die passende Struktur erzeugen. Wenn Sie keinen Namen für die oberste Ebene angeben, wird dafür Root verwendet.

Wofür die JSON-Umwandlung geeignet ist

JSON kann Informationen aus einer Schnittstelle oder einer Konfigurationsdatei in einer Form enthalten, die im Projekt erst beschrieben werden muss. Dieses Werkzeug erzeugt aus einem übergebenen JSON-Text eine passende Struktur für TypeScript oder Python. Das erleichtert den ersten Übertrag von Datenfeldern in eine Anwendung, ersetzt aber nicht die fachliche Prüfung der erwarteten Daten.

TypeScript ist beim Öffnen vorausgewählt. Für JSON-Objekte erstellt die Ausgabe TypeScript-Schnittstellendeklarationen oder Python-Dataclass-Deklarationen. Die Feldtypen richten sich nach den Werten im eingegebenen JSON: Text wird in TypeScript als string und in Python als str dargestellt, Wahrheitswerte als boolean beziehungsweise bool, Zahlen als number beziehungsweise float.

Besonders hilfreich ist die Umwandlung, wenn ein Objekt neben einfachen Werten weitere Objekte enthält. Solche verschachtelten Bereiche werden als eigene Typen berücksichtigt, während das übergeordnete Feld auf den passenden verschachtelten Typ verweist. So lässt sich die Beziehung zwischen den Ebenen des JSON in der erzeugten Struktur wiedererkennen.

So gehen Sie bei der Erzeugung vor

  1. Stellen Sie den Inhalt zusammen, den Sie umwandeln möchten. Verwenden Sie einen JSON-Text mit gültiger Syntax, etwa {"name":"Mara","active":true}. Ein leerer Eintrag oder eine Eingabe, die nur aus Leerzeichen besteht, wird nicht verarbeitet. Dasselbe gilt für Text, der beim Parsen kein gültiges JSON ergibt.

  2. Fügen Sie den vorbereiteten Text in das Eingabefeld ein. Achten Sie dabei darauf, dass die geschweiften Klammern, Anführungszeichen, Doppelpunkte und Kommata an den vorgesehenen Stellen stehen. Die Umwandlung bezieht sich auf diesen Inhalt, nicht auf eine allgemeine Beschreibung eines Datenmodells.

  3. Entscheiden Sie sich für die Zielsprache. Lassen Sie die Vorauswahl TypeScript bestehen, wenn Sie Schnittstellendeklarationen benötigen. Wählen Sie Python, wenn Dataclass-Deklarationen besser zu Ihrem Vorhaben passen. Eine andere Sprachbezeichnung gehört nicht zu den unterstützten Auswahlmöglichkeiten und führt zu einer Ablehnung.

  4. Vergeben Sie bei Bedarf einen Namen für den obersten Typ. Ohne eigene Angabe verwendet das Werkzeug den Namen Root. Ein selbst gewählter Name kann die Zuordnung in einem Projekt erleichtern, etwa wenn der JSON-Inhalt einen Kunden oder eine Bestellung beschreibt.

  5. Starten Sie die Erzeugung und lesen Sie die resultierende Struktur anhand Ihres Eingabetextes. Vergleichen Sie zunächst die Feldnamen und Ebenen mit dem JSON. Bei einem verschachtelten Objekt sollte die Ausgabe einen dafür vorgesehenen Typ enthalten, auf den das entsprechende Feld verweist.

  6. Kontrollieren Sie danach die Darstellung der einfachen Werte. Ein Textwert erhält je nach Sprache string oder str; ein Wahrheitswert wird zu boolean oder bool. Zahlen werden als number in TypeScript und als float in Python abgebildet. Diese Zuordnung beschreibt die aus den vorliegenden Werten abgeleitete Struktur.

Was die abgeleitete Ausgabe aussagt

Die erzeugte Struktur ist eine Ableitung aus dem JSON, das Sie in diesem Durchgang übergeben haben. Enthält ein Objekt beispielsweise Text, eine Zahl und einen Wahrheitswert, erscheinen dafür unterschiedliche Feldtypen in der gewählten Zielsprache. Ein weiteres Objekt wird als verschachtelter Bereich behandelt und nicht wie ein einzelner Text- oder Zahlenwert dargestellt.

Der Name des obersten Typs hilft bei der Einordnung, verändert jedoch nicht die Feldinhalte. Root ist die verwendete Bezeichnung ohne eigene Namensangabe; ein benutzerdefinierter Name kennzeichnet nur die oberste Ebene anders. Die Sprachwahl beeinflusst dagegen die Form der erzeugten Deklaration: TypeScript verwendet bei Objekten Schnittstellendeklarationen, Python Dataclass-Deklarationen.

Beurteilen Sie die Ausgabe im Zusammenhang mit dem Datensatz, den Ihr Projekt tatsächlich erwartet. Wenn ein Feld im übergebenen JSON fehlt, kann aus diesem einzelnen Text keine Aussage über eine dort nicht enthaltene Eigenschaft abgeleitet werden. Auch eine vorhandene Struktur zeigt nicht automatisch, ob weitere fachliche Vorgaben Ihres Projekts erfüllt sind. Bei leerem, aus Leerzeichen bestehendem oder syntaktisch fehlerhaftem Inhalt ist keine erzeugte Struktur zu erwarten.

Praktisches Beispiel

Sie erhalten die JSON-Daten eines Kundenobjekts und möchten aus dessen drei Feldern eine Python-Struktur für die weitere Prüfung ableiten.

Fügen Sie {"name":"Mara","age":31,"active":true} ein, wählen Sie Python und tragen Sie Kunde als Namen der obersten Ebene ein.

Bei der Auswahl von Python entsteht eine Dataclass-Deklaration mit den Feldern name als str, age als float und active als bool; für die oberste Ebene kann der Name Kunde erscheinen.

Einschränkungen

  • Die Struktur berücksichtigt die Werte und verschachtelten Objekte im übergebenen JSON. Eigenschaften, die darin nicht vorkommen, werden aus diesem Inhalt nicht automatisch ergänzt.

Häufige Fehler

  • Die Eingabe lässt sich nicht verarbeiten: Häufig enthält das Feld nur Leerzeichen oder eine JSON-Syntax ist beschädigt. Entfernen Sie den Leerraum am Anfang und Ende, prüfen Sie Anführungszeichen, Klammern, Doppelpunkte und Kommata und starten Sie die Umwandlung erst mit einem gültigen, nicht leeren JSON-Text.

Häufige Fragen

Welche Sprachen kann ich für die Umwandlung verwenden?

TypeScript und Python stehen zur Verfügung. In TypeScript werden JSON-Objekte als Schnittstellendeklarationen ausgegeben, während Python dafür Dataclass-Deklarationen verwendet. Eine andere Sprachangabe wird als nicht unterstützt zurückgewiesen.

Wie benenne ich den obersten Typ?

Ohne eigene Bezeichnung heißt der oberste Typ Root. Sie können stattdessen einen eigenen Namen für diese oberste Ebene angeben; dadurch werden die enthaltenen Felder nicht verändert.

Warum entsteht bei meiner Eingabe keine Struktur?

Ein leerer oder nur aus Leerzeichen bestehender Inhalt wird nicht erzeugt. Bei fehlerhafter JSON-Syntax schlägt die Verarbeitung ebenfalls fehl, daher sollte der Text vor dem Start als gültiges JSON vorliegen.

Tool

JSON zu Code Konverter