JSON-Formatierer

JSON mit zwei Leerzeichen einrücken oder durch Entfernen von Leerraum außerhalb der Strings minifizieren. Die ursprüngliche Zahlenschreibweise, Escape-Sequenzen und Schlüsselreihenfolge bleiben erhalten. Zusätzlich lassen sich Objekte in Abfrageparameter umwandeln und Textfragmente escapen oder dekodieren.

Läuft lokal in deinem Browser

JSON einfügen, prüfen und die Ausgabe kopieren

Auch einzelne Strings, Zahlen, boolesche Werte und null sind gültige JSON-Eingaben. Ein Objekt an der Wurzel ist nur für die Umwandlung in Abfrageparameter erforderlich.

Die Eingabe erfolgt durch Einfügen, ohne Datei-Upload oder Abruf von URL-Inhalten; Formatierung und Textumwandlungen laufen im Browser, und große Eingaben hängen von dessen verfügbarem Speicher ab.

  1. JSON in das Eingabefeld einfügen und die formatierte Vorschau ansehen.
  2. Formatieren oder Minifizieren wählen. Bei Syntaxfehlern die angegebene Zeile und Spalte prüfen.
  3. Das Ergebnis aus dem Ausgabebereich kopieren.

Zahlenschreibweise und Konvertierungsregeln

Große Zahlen bleiben als Text erhalten

Beim Formatieren und Minifizieren bleiben 9007199254740993, 1.234567890123456789 und 1e400 unverändert. Auch -0, nachgestellte Dezimalnullen wie in 1.2300 und die Exponentialschreibweise werden bewahrt. Wenn ein anderes Programm die Ausgabe als Gleitkommazahlen einliest, kann dort weiterhin Präzision verloren gehen.

Doppelte Schlüssel in {"a":1,"a":2} bleiben ebenfalls stehen. Nachfolgende Parser können sie unterschiedlich auswerten. Die Parameterkonvertierung lehnt doppelte Schlüssel auf oberster Ebene ab.

Syntaxprüfung ohne JSON Schema

Kommentare, abschließende Kommas, Schlüssel ohne doppelte Anführungszeichen, NaN und Infinity werden abgelehnt. Die Prüfung kontrolliert weder Pflichtfelder noch ein JSON Schema und repariert keine Fehler.

Verschachtelte Werte werden zu JSON-Strings

Jede Eigenschaft des Wurzelobjekts ergibt ein Schlüssel-Wert-Paar. Strings liefern ihren dekodierten Text, null einen leeren Wert. Zahlen und boolesche Werte werden zu Text, wobei die Zahlenschreibweise erhalten bleibt. Verschachtelte Objekte und Arrays ergeben kompakte JSON-Strings, keine Pfade mit eckigen Klammern.

Aus {"q":"a b&c","user":{"id":9007199254740993}} wird q=a+b%26c&user=%7B%22id%22%3A9007199254740993%7D. Die Ausgabe ist bereits als Formulardaten für URLs kodiert: Leerzeichen werden zu +, reservierte Zeichen prozentkodiert. Nicht erneut kodieren. Ein führendes ? wird nicht ergänzt.

Fragen zu JSON-Text und Escape-Sequenzen

Braucht Unescape äußere Anführungszeichen?

Nein. Escape macht aus zwei Zeilen A und B das Fragment A\nB. Unescape erwartet dieses Fragment ohne äußere doppelte Anführungszeichen und stellt den Zeilenumbruch wieder her. Leerraum am Anfang und Ende bleibt erhalten; Tabulatoren und Steuerzeichen werden ebenfalls maskiert. Ungültige Sequenzen wie \q werden beim Dekodieren abgelehnt.

Was macht die Unicode-Umwandlung?

Sie ersetzt UTF-16-Codeeinheiten außerhalb des ASCII-Bereichs durch \uXXXX; Zeichen außerhalb der Unicode-Basisebene benötigen Surrogatpaare. Beim Dekodieren bleiben fehlerhafte Tokens stehen, ein wörtliches \u0041 wird jedoch zu A. Gemischter Text ist daher nicht immer umkehrbar. Diese Textumwandlung prüft keine JSON-Syntax.

Zuletzt verwendet: