Kostenloser Online-JSON-Formatierer & -Validator
Fügen Sie Ihr JSON ein, um es sofort zu formatieren, zu minimieren oder zu validieren. Die gesamte Verarbeitung findet in Ihrem Browser statt.
Was JSON ist und warum es das Web erobert hat
JSON (JavaScript Object Notation) ist ein textbasiertes Datenaustauschformat, das aus der JavaScript-Objekt-Literal-Syntax abgeleitet ist. Es unterstützt sechs Datentypen (Objekte, Arrays, Strings, Zahlen, Booleans und null) und nichts weiter. Douglas Crockford spezifizierte das Format 2001 als bewusst minimalistische Alternative zu XML und veröffentlichte den Entwurf auf json.org mit dem ausdrücklichen Ziel, „die fettarme Alternative zu XML“ zu schaffen. Die IETF standardisierte JSON als RFC 4627 im Juli 2006, verfeinerte es als RFC 7159 im März 2014 und erneut als RFC 8259 im Dezember 2017 (aktuell STD 90, der aktive Standard, parallel auch als ECMA-404 veröffentlicht). JSONs Eroberung der Datenebene des Webs vollzog sich grob zwischen 2008 und 2014: Mit dem Wachstum von Single-Page-Apps und Mobile-Clients wurden die ausführlichen XML-Payloads früherer APIs durch JSON ersetzt. Bis 2026 dokumentiert sich praktisch jede öffentliche REST-API in JSON; XML überlebt in Dokumentformaten und Enterprise-Integration, aber JSON beherrscht die API-Ökonomie. Dieses Werkzeug liest JSON, validiert es gegen die Spezifikation und gibt es formatiert (eingerückt, mit Zeilenumbrüchen) oder minifiziert (Whitespace entfernt) wieder aus.
Was „Format JSON“ eigentlich tut
JSON ist auf Spezifikationsebene whitespace-unempfindlich, ein Parser liest {"name":"Alice","age":30} identisch zur mehrzeilig eingerückten Form. Der sichtbare Unterschied existiert ausschließlich für menschliche Leser. Formatierung (auch „Pretty-Print“ oder „Beautifying“ genannt) fügt Einrückung zwischen verschachtelten Ebenen ein, platziert jede Eigenschaft auf einer eigenen Zeile und ergänzt Leerzeichen nach dem Doppelpunkt zwischen Schlüssel und Wert. Minifizieren tut das Gegenteil: jeder Whitespace-Byte außerhalb von String-Literalen wird entfernt. Produktive HTTP-Antworten werden typischerweise minifiziert, um Bandbreite zu sparen (gzip und Brotli am CDN-Rand erledigen den Rest); während der Entwicklung liest man die formatierte Version. Die Standard-Formatierungs-Konventionen: 2 Leerzeichen pro Einrückungsebene (der moderne Web-Standard, Prettiers Default, die Norm im JavaScript-Ökosystem), 4 Leerzeichen für Codebases mit Python-geprägten Konventionen, oder 1 Tab für Projekte, die Tab-Einrückung bevorzugen. JSON.stringify() in JavaScript nimmt eine Ganzzahl oder einen String als zweites Argument, das genau dies steuert, JSON.stringify(data, null, 2) erzeugt 2-Leerzeichen-eingerückte Ausgabe. Dieses Werkzeug bietet dieselben drei Optionen.
JSON ist streng, die Regeln, die einen stolpern lassen
JSONs Grammatik ist berüchtigt unnachgiebig. Objekt-Schlüssel müssen mit doppelten Anführungszeichen umschlossen sein (einfache Anführungszeichen sind nicht zulässig). String-Werte müssen doppelte Anführungszeichen verwenden. Keine Trailing-Kommas nach der letzten Eigenschaft eines Objekts oder dem letzten Element eines Arrays, eine häufige Überraschungsquelle für JavaScript-Entwickler, weil JS selbst Trailing-Kommas akzeptiert. Keine Kommentare: anders als YAML oder JavaScript hat JSON keine Kommentar-Syntax. Kein undefined-Wert: JSON kennt nur null; der Versuch, JavaScripts undefined als JSON zu kodieren, lässt die Eigenschaft komplett wegfallen. Zahlen müssen in JSON-Dezimalform sein: keine führenden Nullen (007 illegal), kein Hex (0x7F illegal), kein Infinity oder NaN. Strings müssen gültiges UTF-8 sein: die meisten Parser tolerieren UTF-16-Surrogatpaar-Probleme, aber die Spezifikation fordert wohlgeformtes Unicode. Doppelte Schlüssel sind technisch gültig laut Spezifikation, erzeugen aber undefiniertes Verhalten in den meisten Parsern (gewöhnlich gewinnt der letzte Wert). Mehrere JSON-Varianten lockern diese Regeln: JSON5 (Aseem Kishore, 2012) erlaubt Trailing-Kommas, einfache Anführungszeichen, Kommentare und andere ergonomische Lockerungen; JSONC (verwendet von VS Codes tsconfig.json und ähnlichen) ist JSON mit erlaubten C-Stil-Zeilenkommentaren; HJSON zielt auf menschliche Freundlichkeit mit optionalen quotierten Schlüsseln. Keines davon ist eigentliches JSON, sie brauchen ihre eigenen Parser, und die meisten Produktions-Tools erwarten striktes JSON gemäß RFC 8259.
Wo formatiertes JSON sein Geld wert ist
- Lesen von API-Antworten. Ein REST-Endpunkt liefert in der Produktion minifiziertes JSON. Um es während des Debuggings zu inspizieren, hier einfügen, die Struktur mit ordentlicher Einrückung und Schlüsselfärbung sehen, den Bug finden.
- Lesen strukturierter Log-Zeilen. Moderne Logging-Stacks (Datadog, Splunk, Elasticsearch, CloudWatch) emittieren ein JSON-Objekt pro Log-Zeile, alles auf einer Zeile. Um einen komplexen Log-Eintrag schnell zu lesen, hier formatieren.
- Konfigurationsdateien überprüfen.
package.json,tsconfig.json,composer.json, AWS-IAM-Policies, Kubernetes-JSON-Manifeste, alle sind leichter zu reviewen, wenn sie konsistent formatiert sind. Die „Sort Keys“-Option erzeugt eine kanonische alphabetische Reihenfolge, die nützlich ist, um zwei Configs zu differenzieren. - Zwei JSON-Dokumente vergleichen. Beide mit konsistenter Einrückung und Schlüsselsortierung formatieren, dann die Ergebnisse in deinem bevorzugten Diff-Tool vergleichen. Ohne Normalisierung erzeugen semantisch identische JSONs, die sich nur in Whitespace oder Schlüsselreihenfolge unterscheiden, lärmende Diffs.
- Eine handgepflegte JSON-Datei validieren. Einfügen, auf Validate klicken, wenn es einen Syntaxfehler gibt, sagen Position und Meldung dir genau, wo du suchen musst. Schneller, als die Datei durch einen Build laufen zu lassen, der mit „unexpected token at line 47“ fehlschlägt.
- Den Pfad zu einem tief verschachtelten Wert finden. Tree-Ansicht öffnen, auf den Wert klicken, der dich interessiert, seinen JSONPath-Ausdruck sehen, nützlich, um
jq-Abfragen, JSONPath-Assertions in Tests zu schreiben oder das Feld im Code anzusprechen. - Minifizierung vor dem Deployment. Eine JSON-Config, die in einem Browser-Bundle ausgeliefert wird, ein eingebetteter JSON-in-JS-String oder jeder Kontext, in dem Bytes zählen, Minify entfernt all den Formatierungs-Whitespace.
JSON im breiteren Tooling-Ökosystem
Für Kommandozeilen-Workflows ist jq (Stephen Dolan, erstmals 2012 veröffentlicht) der kanonische JSON-Prozessor, eine kleine, statisch gelinkte Binary, die Formatierung (jq .), Filterung (jq '.users[] | .email'), Transformation und komplexe Abfragen mit ihrer eigenen prägnanten Ausdruckssprache beherrscht. Pythons Standard-Bibliothek enthält python -m json.tool für einmaliges Pretty-Printing. JavaScripts eingebautes JSON.stringify(obj, null, 2) ist der schnellste Formatter im Browser/in Node. JSON Schema (aktueller Draft 2020-12, herausgegeben von Henry Andrews, Austin Wright, Greg Dennis und anderen) liefert ein Vokabular, um zu deklarieren, welche Form ein JSON-Dokument haben muss (Typ-Constraints, erforderliche Eigenschaften, Format-Validatoren, bedingte Logik) und ist der Standard für API-Vertragsvalidierung, OpenAPI-3.x-Spezifikationen, Konfigurations-Validierung und JSON-basierte Formular-Generierung. JSONPath (Stefan Goessner, 2007, jetzt im Februar 2024 als RFC 9535 standardisiert) ist die XPath-ähnliche Abfragesprache für JSON, verwendet von jqs einfacherer Teilmenge und von Tools wie Postman, jsonpath-ng (Python) und der AWS CLI. JSON-LD (W3C-Empfehlung, aktuelle Version 1.1 im Juli 2020 veröffentlicht) erweitert JSON um Linked-Data-Konventionen des Semantic Web und ist das Format, das Google für Strukturdaten-Markup auf Webseiten empfiehlt. JSON Patch (RFC 6902) und JSON Merge Patch (RFC 7396) definieren standardisierte Diff/Patch-Formate für JSON-Dokumente.
Tree-Ansicht, warum sie wichtig ist
Ein pretty-printed JSON-Dokument selbst mittlerer Größe (ein paar hundert Zeilen) ist als flacher Text schwer zu navigieren. Die Tree-Ansicht in diesem Werkzeug klappt jedes Objekt und Array in einen aufklappbaren Knoten ein, lässt dich klicken, um nur die Ebenen zu sehen, die dich interessieren, und zeigt den JSONPath-Ausdruck für jeden Knoten, auf den du klickst. Die Pfad-bei-Klick-Funktion ist die praktische Brücke zwischen „ich kann den Wert, den ich will, im Dokument sehen“ und „ich kann Code schreiben, der auf diesen Wert zugreift“, den Pfad in jq einfügen, in eine JSONPath-Abfrage, in JavaScript-Klammernotation, in eine Postman-Test-Assertion. Für tief verschachtelte API-Antworten (Stripe, Shopify, Salesforce, alles mit reichen Domänenmodellen) ist Tree-Ansicht + Pfad-Kopie der Workflow, der „ich sehe das Feld“ mit zwei Klicks zu „ich habe den Zugriffsausdruck“ macht.
Datenschutz: Validierung nur im Browser
JSON, das in einen Formatter eingefügt wird, sind häufig echte Produktionsdaten, API-Antworten mit Nutzer-IDs, Session-Tokens, internen Entitäts-IDs, Konfigurationswerte, die Endpunkt-URLs und Feature-Flags enthalten. Server-seitige JSON-Formatter nehmen eine Kopie jeder Eingabe in ihre Logs auf. Dieses Werkzeug parst dein JSON mit dem im Browser eingebauten JSON.parse(), durchläuft die resultierende Struktur in JavaScript und gibt sie als String wieder aus, alles innerhalb deines Browser-Tabs. Verifiziere im Network-Tab der DevTools, während du auf Format klickst (es feuert keine Anfrage), oder schalte die Seite nach dem Laden offline (Flugmodus), und der Formatter funktioniert weiter. Sicher für produktive API-Antworten, interne Konfiguration, JSON mit Tokens oder Schlüsseln oder jedes Dokument, das du nicht auf der Festplatte eines Fremden sehen wolltest.
Häufig gestellte Fragen
Warum scheitert mein JSON an der Validierung?
Die häufigsten Fehler: Trailing-Kommas nach der letzten Eigenschaft/dem letzten Element (in JavaScript und JSON5 erlaubt, in Standard-JSON illegal); einfache Anführungszeichen statt doppelter (JSON erfordert ausschließlich "); unquotierte Schlüssel (JavaScript-Objekt-Literale erlauben {name: "Alice"}, JSON erfordert {"name": "Alice"}); Kommentare (JSON hat keine Kommentar-Syntax, verwende JSON5 oder JSONC, wenn du sie brauchst); undefined-Werte (JSON kennt nur null); fehlende Klammern; spezielle Floats wie NaN oder Infinity (in JSON illegal). Die Fehlermeldung des Validators gibt Zeile und Spalte; dort zuerst nachsehen.
Was ist der Unterschied zwischen Formatieren und Minimieren?
Format fügt Einrückung, Zeilenumbrüche und Abstände hinzu, um das JSON lesbar zu machen; Minify entfernt jeden unnötigen Whitespace, um es so klein wie möglich zu machen. Der eigentliche Dateninhalt ist identisch, JSON-Parser ignorieren Whitespace auf Syntaxebene. Verwende formatiert für Entwicklung, Debugging und Code Review; verwende minifiziert für HTTP-Übertragung, eingebettetes JSON in JavaScript-Bundles oder jeden Kontext, in dem Bytes zählen. Moderne Infrastruktur (gzip auf HTTP-Antworten, Brotli am CDN-Rand) komprimiert JSON aggressiv, der Bandbreitenunterschied ist also kleiner, als er aussieht, aber minifiziert ist trotzdem etwas kleiner und schneller zu parsen.
Gibt es eine Größenbeschränkung?
Keine harte Obergrenze, aber praktische Limits hängen vom Browser-Speicher ab. Dateien bis ~10 MB werden auf modernen Geräten in deutlich weniger als einer Sekunde formatiert und validiert; Dateien im Bereich 50-100 MB können den Tab kurz einfrieren, während JSON.parse() die Struktur durchläuft. Für sehr großes JSON (Gigabytes, typisch für große API-Exporte oder NDJSON-Log-Dumps) handhaben Kommandozeilen-Tools (jq, python -m json.tool, node -e) sie besser, weil sie streamen können, statt alles in den Speicher zu laden.
Was macht „Sort Keys“ und wann sollte ich es verwenden?
Sort Keys alphabetisiert die Schlüssel jedes Objekts rekursiv. Die Daten-Semantik bleibt unverändert (die Reihenfolge der Schlüssel eines JSON-Objekts ist laut Spezifikation technisch undefiniert, obwohl die meisten Parser Einfügereihenfolge bewahren) aber die Ausgabe wird kanonisch. Nützlich, um zwei JSON-Dokumente, die semantisch äquivalent sein sollten, zu differenzieren (ohne Sortierung erzeugen Schlüsselreihenfolge-Unterschiede lärmende Diffs), und um reproduzierbare Build-Ausgaben zu erzeugen (dieselben Daten sollten immer Byte-identisch in JSON serialisieren, unabhängig davon, wie sie im Speicher konstruiert wurden).
Werden meine JSON-Dokumente hochgeladen?
Nein. Das gesamte Parsen, Validieren, Formatieren, Sortieren und Tree-Rendering geschieht in deinem Browser über JSON.parse() und JavaScript. Das eingefügte JSON überquert nie das Netzwerk. Verifiziere im Network-Tab der DevTools, während du auf Format klickst (es feuert keine Anfrage), oder schalte die Seite nach dem Laden offline (Flugmodus). Sicher für proprietäre API-Antworten, interne Konfiguration, JSON mit Tokens oder Session-Daten oder alles, was unter NDA fällt.
Verwandte Werkzeuge
Kostenloser Online-Base64-Encoder & -Decoder
Kodieren Sie Text zu Base64 oder dekodieren Sie Base64 zu Text sofort. Unterstützt Datei-zu-Base64-Konvertierung. Kostenlos, keine Anmeldung, läuft in Ihrem Browser.
Kostenloser Markdown Previewer Online
Schreiben Sie Markdown auf der linken Seite und sehen Sie eine Live-Vorschau auf der rechten Seite.
Kostenloser Wort- und Zeichenzähler Online
Fügen Sie unten Text ein oder geben Sie ihn ein, um sofort die Wortanzahl, Zeichenanzahl, Sätze, Absätze und geschätzte Lesezeit anzuzeigen.