Text

JSON-Formatierer

Formatiert, komprimiert und validiert JSON. Wählen Sie einen Einzug für lesbare Formatierung oder komprimieren Sie alles in eine Zeile. Syntaxfehler werden sofort angezeigt.


JSON-Eingabe
Formatiertes Ergebnis Gültiges JSON Ungültiges JSON
{{ result.lines }} Zeilen / {{ result.bytes.toLocaleString() }} Bytes
{{ result.error }}

Tips

  • JSON-Schlüssel müssen zwingend in doppelten Anführungszeichen stehen. Einfache Anführungszeichen sind ungültig.
  • Abschließende Kommas ({"a":1,}) sind laut JSON-Spezifikation ungültig.
  • Zahlen können in e-Notation angegeben werden. NaN und Infinity sind jedoch ungültig.
  • Doppelte Anführungszeichen innerhalb von Strings müssen als \" maskiert werden. Zeilenumbrüche werden als \n, Tabulatoren als \t dargestellt.
  • Komprimierung reduziert die Dateigröße effektiv. Für API-Übertragungen empfiehlt sich die komprimierte Version, für Konfigurationsdateien die formatierte.

Häufig gestellte Fragen

Schlüssel müssen zwingend in doppelten Anführungszeichen stehen, abschließende Kommas sind nicht erlaubt, und undefined, Funktionen, NaN sowie Infinity können nicht verwendet werden.

Nein. Die JSON-Spezifikation sieht keine Kommentarsyntax vor. Als Alternativen werden JSON5 oder JSONC verwendet.

Laut RFC 8259 ist UTF-8 vorgeschrieben. Aus Gründen der Interoperabilität wird UTF-8 empfohlen.

In der JSON-Spezifikation sind alle Zahlen vom Typ number. Bei großen ganzen Zahlen kann es zu Präzisionsverlusten kommen, wenn sie MAX_SAFE_INTEGER von JavaScript überschreiten.

Übrigens – Warum JSON XML verdrängt hat

In den frühen 2000er Jahren war XML der Standard, doch 2001 schlug Douglas Crockford JSON vor. Da es leichtgewichtig, handlich und gut lesbar ist, hat sich JSON ab den 2010er Jahren als neuer Standard durchgesetzt.

Für dieselben Daten ist JSON in vielen Fällen 30–50 % kleiner als XML. Im Zeitalter der mobilen Kommunikation hatte das einen direkten Einfluss auf die App-Reaktionsgeschwindigkeit.

RFC 8259 stuft doppelte Schlüssel als „SHOULD NOT" ein, verbietet sie jedoch nicht. {"a":1,"a":2} ist syntaktisch gültig, das Verhalten ist jedoch undefiniert.