tigtools

JSON online formatieren

Erfahren Sie, wie Sie JSON lesbar formatieren oder minifizieren, Einrückung wählen, Schlüssel sicher sortieren, große Dateien verarbeiten und Ganzzahlen schützen.

Von TIG Tools editorial teamVeröffentlicht am 25. Oktober 20266 Min. Lesezeit

Das Formatieren von JSON erleichtert das Lesen oder macht es kompakter zum Senden und Speichern. Ein Formatierer kann Einrückungen hinzufügen, unnötige Leerzeichen entfernen und helfen, Syntaxfehler aufzudecken – aber das Sortieren von Schlüsseln oder die Verarbeitung von Zahlen kann Auswirkungen haben, die über das Aussehen hinausgehen. Verwenden Sie die folgenden Schritte und Prüfungen, um JSON zu formatieren, ohne versehentlich zu ändern, was Ihre Anwendung benötigt.

Pretty-Printing und Minifizieren

Pretty-Printing fügt Zeilenumbrüche und Einrückungen hinzu, damit Sie verschachtelte Objekte und Arrays überblicken können. Es ist nützlich, wenn Sie eine Antwort überprüfen, eine Konfigurationsdatei bearbeiten oder Daten mit einer Person vergleichen. Zum Beispiel dieses kompakte JSON:

{"name":"Mina","active":true,"tags":["editor","admin"]}

kann wie folgt lesbar formatiert werden:

{
  "name": "Mina",
  "active": true,
  "tags": [
    "editor",
    "admin"
  ]
}

Minifizieren entfernt optionale Leerzeichen und setzt das Dokument normalerweise in eine Zeile. Dies kann die Anzahl der Zeichen in einer Datei reduzieren, komprimiert die Daten jedoch nicht in derselben Weise wie ein Komprimierungsformat wie gzip. Minifiziertes JSON ist schwerer manuell zu prüfen; bewahren Sie daher eine lesbare Kopie auf, wenn Sie es bearbeiten oder Fehler beheben müssen.

Für gewöhnliches JSON mit eindeutigen Objektschlüsseln und Werten, die Ihr Parser darstellen kann, ändern Pretty-Printing und Minifizieren nur Leerzeichen, nicht die zugrunde liegenden Daten. Ein Formatierer muss das Dokument jedoch parsen und serialisieren, und Implementierungen können sich darin unterscheiden, wie sie doppelte Schlüssel, Zahlenpräzision oder Escaping behandeln. Behandeln Sie die formatierte Ausgabe als neue Datei und prüfen Sie sie, bevor Sie ein wichtiges Original ersetzen.

JSON online formatieren

  1. Öffnen Sie den TIG JSON-Formatierer.
  2. Fügen Sie das JSON ein oder geben Sie es ein, das Sie formatieren möchten.
  3. Wählen Sie für die lesbare Ausgabe eine Einrückung (2 Leerzeichen, 4 Leerzeichen oder Tabs) oder für eine kompakte Version „Minifizieren“.
  4. Überprüfen Sie das Ergebnis, kopieren Sie es dann oder speichern Sie es in Ihrem Projekt.
  5. Wenn die Eingabe abgelehnt wird, meldet der Formatierer den ersten Fehler mit Zeile und Spalte; der JSON-Validator zeigt die Zeile ebenfalls mit einer Markierung unter dem Problem.

Ein Formatierer kann helfen, gültiges JSON lesbar zu machen, aber er kann nicht ableiten, was die Daten bedeuten sollen. Überprüfen Sie nach dem Formatieren wichtige Felder und testen Sie das Ergebnis mit der Anwendung, die es verarbeiten wird.

Einrückungsstil wählen

Die Einrückung ist eine Frage der Lesbarkeit; JSON schreibt keine bestimmte Anzahl von Leerzeichen vor. Zwei Leerzeichen pro Ebene sind ein üblicher Stil für kompakte, lesbare Dateien. Vier Leerzeichen können die Verschachtelung auf einem breiten Bildschirm leichter nachvollziehbar machen, während Tabs zu einem Projekt passen können, das bereits Tabs verwendet. Wählen Sie eine Konvention und verwenden Sie sie konsequent.

Die Einrückung ändert Leerzeichen, nicht die Datenstruktur. Sie erhöht jedoch die Zeichenanzahl der Datei, daher kann Minifizieren nützlich sein, wenn eine kompakte Darstellung benötigt wird. Vermeiden Sie es, Leerzeichen oder Zeilenumbrüche innerhalb einer Zeichenkette in Anführungszeichen einzufügen: Diese Zeichen sind Teil des Zeichenkettenwerts, nicht des Formatierungsleerraums.

Sollten Sie Objektschlüssel sortieren?

JSON-Objekte sind Sammlungen von Name-Wert-Paaren, und die Reihenfolge der Objektmitglieder ist keine verlässliche Möglichkeit, Bedeutung auszudrücken. Arrays hingegen sind geordnet: Das Ändern der Reihenfolge von Array-Elementen ändert ihre Bedeutung, sobald die Anwendung diese Reihenfolge verwendet. Das Sortieren von Schlüsseln kann Dateien leichter vergleichbar machen oder die generierte Ausgabe konsistent halten, ist aber optional und kann eine Datei vom Original unterscheiden.

Sortieren Sie Schlüssel nur, wenn es einen praktischen Grund gibt, etwa um lesbare Diffs zu erstellen oder einer Projektkonvention zu folgen. Die Option „Schlüssel A–Z sortieren“ des TIG-Formatierers sortiert Schlüssel in jedem Objekt auf jeder Ebene und behält die Array-Reihenfolge bei; prüfen Sie die Ausgabe, bevor Sie sie verwenden. Beachten Sie, dass auf JavaScript basierende Formatierer, einschließlich dieses hier, Schlüssel, die wie ganze Zahlen aussehen ("1", "20"), vor anderen Schlüsseln platzieren, selbst wenn die Sortierung ausgeschaltet ist. Sortieren Sie Array-Inhalte nicht so, als wären es Objektschlüssel.

Seien Sie auch bei doppelten Objektnamen vorsichtig. RFC 8259 besagt, dass Objektnamen eindeutig sein sollten; wenn sie es nicht sind, können verschiedene Parser sie unterschiedlich behandeln. Das Sortieren oder erneute Serialisieren eines solchen Objekts kann das Problem verschleiern oder einen Wert verwerfen. Validieren Sie die Eingabe und beheben Sie doppelte Namen an der Quelle, anstatt sich darauf zu verlassen, dass die Formatierung entscheidet, welcher Wert erhalten bleibt.

Wenn JSON für eine Signatur, einen Cache-Schlüssel oder einen exakten Textvergleich verwendet wird, kann das Ändern der Schlüsselreihenfolge oder der Zahlenschreibweise die Bytes ändern, selbst wenn die Daten äquivalent erscheinen. Befolgen Sie das vom System geforderte Kanonisierungsverfahren, anstatt anzunehmen, dass das alphabetische Sortieren von Schlüsseln ausreicht.

Beispiel: Eine API-Antwort formatieren

Angenommen, eine API liefert diese einzeilige Antwort:

{"order":{"id":"A-1042","items":[{"sku":"MUG-BLUE","quantity":2},{"sku":"NOTEBOOK","quantity":1}],"paid":true}}

Pretty-Printing macht die Bestellung und ihre beiden Einzelpositionen leichter zu prüfen. Sie können überprüfen, dass paid ein Boolescher Wert ist, die quantity-Werte Zahlen sind und die Bestell-ID eine Zeichenkette ist. Die Formatierung sollte das items-Array nicht neu anordnen: Seine Reihenfolge kann für die Anwendung oder die lesende Person wichtig sein. Wenn Sie die Antwort später für die Speicherung oder Übertragung minifizieren, vergleichen Sie die Werte – nicht nur das einzeilige Erscheinungsbild – um zu bestätigen, dass sich nichts Wichtiges geändert hat.

Arbeiten mit großen JSON-Dateien

Große Dateien benötigen mehr Zeit und Speicher zum Laden, Parsen und Anzeigen. Ein Browser kann langsam oder nicht mehr reagierend werden, wenn die Eingabe für den verfügbaren Speicher zu groß ist. Wenn eine Datei unhandlich ist, überlegen Sie, ob Sie eine kleinere Stichprobe verarbeiten, die Daten an sinnvollen Datensatzgrenzen aufteilen oder ein für große Eingaben konzipiertes Befehlszeilen- oder Streaming-Tool verwenden können. Teilen Sie Text nicht an willkürlichen Zeichenpositionen auf: Das kann eine Zeichenkette durchschneiden oder ein unvollständiges Objekt hinterlassen und ungültiges JSON erzeugen.

Bevor Sie sensible Daten in ein Online-Tool einfügen, prüfen Sie, ob das Tool und die Datenverarbeitungsregeln Ihrer Organisation dafür geeignet sind. Der TIG JSON-Formatierer läuft in Ihrem Browser und sendet den Text nicht an einen Server. Bewahren Sie bei einer großen oder wertvollen Datei eine unveränderte Sicherungskopie auf. Testen Sie den Formatierer zuerst mit einem kleinen repräsentativen Abschnitt und überprüfen Sie, dass das vollständige Ergebnis gültig ist, bevor Sie es über dem Original speichern.

Zahlen größer als 2^53

Die Zahlensyntax von JSON erlaubt Dezimalzahlen, verlangt aber nicht, dass jeder Parser sie mit unbegrenzter Genauigkeit speichert. Viele browserbasierte Tools und JavaScript-Anwendungen verwenden den JavaScript-Typ Number, der nicht jede ganze Zahl jenseits des sicheren Ganzzahlbereichs exakt darstellen kann. Die größte sichere ganze Zahl ist 9007199254740991 (2^53 − 1). Beispielsweise kann 9007199254740993 in JavaScript als 9007199254740992 geparst werden; sobald beim Parsen gerundet wurde, kann ein Formatierer den ursprünglichen Wert nicht wiederherstellen.

Dies ist wichtig für große Datenbank-IDs, Kontonummern und exakte Finanzwerte. Wenn das empfangende System es zulässt, stellen Sie eine exakte große Ganzzahl als JSON-Zeichenkette dar:

{
  "accountId": "9007199254740993"
}

Eine Zeichenkette bewahrt die Ziffern, ist aber ein anderer JSON-Typ als eine Zahl. Bestätigen Sie, dass die Software, die das JSON verarbeitet, eine Zeichenkette erwartet. Verwenden Sie für Dezimalbeträge eine mit der Anwendung vereinbarte Darstellung und einen Ansatz zur Dezimalbehandlung, anstatt anzunehmen, dass ein Formatierer beliebige Genauigkeit bewahrt.

Wenn exakte numerische Werte wichtig sind, testen Sie den Roundtrip: Parsen Sie das Original, formatieren Sie es, prüfen Sie dann die Ausgabe und vergleichen Sie die kritischen Werte. Verlassen Sie sich nicht nur auf visuelle Ähnlichkeit; gerundete Zahlen können plausibel aussehen, aber falsch sein.

Zusammenfassung

  • Formatieren Sie JSON lesbar, um verschachtelte Daten leichter lesbar zu machen; minifizieren Sie es, wenn eine kompakte Ausgabe nützlich ist.
  • Wählen Sie einen konsistenten Einrückungsstil; Leerzeichen innerhalb von Zeichenketten sind Daten, keine Formatierung.
  • Sortieren Sie Objektschlüssel nur, wenn es nützlich ist, und behandeln Sie Arrays niemals als ungeordnet.
  • Große Dateien können den Browserspeicher belasten; bewahren Sie eine Sicherungskopie auf und validieren Sie die Ausgabe.
  • Speichern Sie Ganzzahlen außerhalb des exakten JavaScript-Bereichs als Zeichenketten, wenn das empfangende System diese Darstellung unterstützt.

Jetzt ausprobieren

Nutzen Sie JSON-Formatierer kostenlos direkt in Ihrem Browser. Keine Anmeldung, und Ihre Dateien bleiben auf Ihrem Gerät.

JSON-Formatierer öffnen