JSON-Formatierer & Konverter

JSON formatieren, validieren, minimieren und konvertieren.

Das interaktive Formular ist verfügbar, sobald JavaScript aktiviert ist.

So funktioniert es

Fügen Sie JSON ein und wählen Sie eine Aktion. Formatieren rückt es mit 2 oder 4 Leerzeichen oder mit Tabulatoren ein; Validieren prüft die Syntax und zeigt den Typ des Werts auf oberster Ebene („Typ der Wurzel“), wie viele Schlüssel oder Elemente dieser Wert enthält, verschachtelte nicht mitgezählt („Elemente auf oberster Ebene“), und die Zahl der Zeichen; Minimieren entfernt allen unnötigen Leerraum (Leerzeichen, Tabulatoren, Zeilenumbrüche); die Baumansicht zeigt verschachtelte Objekte und Arrays als aufklappbaren Baum. Ctrl+Enter (Cmd+Enter auf dem Mac) im Eingabefeld formatiert.

Die Validierung folgt dem JSON-Standard (RFC 8259) so, wie Ihr Browser ihn auslegt. Eigenschaftsnamen und Zeichenketten brauchen doppelte Anführungszeichen; true, false und null werden kleingeschrieben; abschließende Kommas, Kommentare, einfache Anführungszeichen, NaN und Infinity sind nicht erlaubt. Schlägt das Parsen fehl, erklärt die Fehlermeldung den Grund und, wenn der Browser eine Position meldet (Chrome und Firefox tun das bei den meisten Fehlern), die Zeile und Spalte, an der es abgebrochen ist.

Formatieren und Minimieren lesen die Daten ein und schreiben sie neu aus; dabei kann sich über den Leerraum hinaus einiges ändern: Ganze Zahlen größer als 9.007.199.254.740.991 können an Genauigkeit verlieren, Zahlen mit mehr als etwa 17 signifikanten Stellen werden gerundet, Zahlen, die für JavaScript zu groß sind (etwa 1e400), werden zu null, aus 1.0 wird 1 und aus 1e3 wird 1000, ein Schlüssel, der im selben Objekt zweimal vorkommt, behält nur seinen letzten Wert, Schlüssel, die wie ganze Zahlen aussehen (etwa "1" oder "10"), rücken in numerischer Reihenfolge an den Anfang ihres Objekts, und die meisten \u-Escape-Sequenzen werden zu den Zeichen, für die sie stehen. Speichern Sie lange IDs als Zeichenketten, damit sie exakt bleiben.

JSON → CSV macht aus einem Array von Objekten eine Zeile pro Objekt, mit einer Kopfzeile aus allen Schlüsseln in der Reihenfolge ihres ersten Auftretens; fehlende Werte und null werden gleichermaßen zu leeren Zellen, und verschachtelte Objekte oder Arrays werden als JSON in die Zelle geschrieben. Ein einzelnes Objekt wird zu einer Zeile, und ein Array aus einfachen Werten wird zu einer einzigen Spalte namens value. Wählen Sie Komma, Semikolon oder Tabulator als Trennzeichen; Tabellenkalkulationen in Ländern mit Dezimalkomma erwarten oft das Semikolon.

Die YAML-Konvertierung schreibt jeden Zeichenkettenwert in doppelte Anführungszeichen und setzt Schlüssel wie yes, no, on, off, true, false und null in Anführungszeichen, damit YAML-1.1-Parser sie nicht als true, false oder null lesen. Alles läuft in Ihrem Browser; nichts wird hochgeladen.

Beispiel

Formatiert das Beispielobjekt mit Einrückungen. Die Werte bleiben unverändert; nur die Darstellung ändert sich.

  • {"name":"Ana","active":true}Wird als eingerücktes Objekt mit zwei Schlüsseln formatiert.
  • {"name":"Ana",}Ungültiges JSON wegen des abschließenden Kommas. Browser, die eine Position melden, verweisen auf Zeile 1, Spalte 15.
  • [{"id":1,"tags":["a","b"]},{"id":2,"name":"Ana"}]CSV mit drei Spalten: id, tags und name. Die Zelle tags enthält das Array als JSON-Text in Anführungszeichen, und der fehlende name des ersten Objekts ist eine leere Zelle.
  • {"id":12345678901234567890}Gültig, aber beim Formatieren wird 12345678901234567000 geschrieben: Die Zahl übersteigt die Genauigkeit einer JavaScript-Zahl.
  • {"country":"no"}YAML: country: "no", in Anführungszeichen, damit es eine Zeichenkette bleibt.

Häufige Fragen

Verändert das Formatieren meine Daten?

Meist nur den Leerraum. Ausnahmen sind sehr große oder sehr genaue Zahlen, als 1.0 oder 1e3 geschriebene Zahlen, doppelte Schlüssel, Schlüssel, die wie ganze Zahlen aussehen (sie rücken nach vorn), und \u-Escape-Sequenzen, die in ihrer Standardform zurückgeschrieben werden. Werte, die exakt bleiben müssen, etwa lange IDs, sollten Zeichenketten sein.

Kann ich Kommentare oder abschließende Kommas verwenden?

Nicht in JSON. JSON5 erlaubt beides, und JSONC erlaubt Kommentare und, bei manchen Parsern, abschließende Kommas, doch Standard-JSON-Parser lehnen sie ab. Entfernen Sie sie vor dem Validieren.

Warum funktioniert mein Objekt in JavaScript, aber hier nicht?

Ein JavaScript-Objektliteral akzeptiert Schlüssel ohne Anführungszeichen, einfache Anführungszeichen, abschließende Kommas und Kommentare. JSON akzeptiert nichts davon.

Wird mein JSON hochgeladen?

Nein. Parsen und Konvertieren geschehen lokal in Ihrem Browser.

Verwandte Werkzeuge