So funktioniert’s
- 1Füge JSON in das Feld ein, zieh eine
.json-Datei hinein oder klicke auf „Datei auswählen“. - 2Das formatierte Ergebnis erscheint schon beim Tippen. Wähle 2 Leerzeichen, 4 Leerzeichen oder Tabulatoren zum Einrücken – oder „Minifizieren“, um alle Leerzeichen und Zeilenumbrüche zu entfernen.
- 3Ist das JSON ungültig, siehst du, was falsch ist – mit genauer Zeile und Spalte. Klicke auf „In der Eingabe anzeigen“, um direkt zur Fehlerstelle zu springen.
- 4Aktiviere „Schlüssel A–Z sortieren“, um die Schlüssel jedes Objekts alphabetisch zu ordnen – praktisch, bevor du zwei Dateien vergleichst.
- 5Kopiere das Ergebnis oder lade es als
.json-Datei herunter.
Was ist JSON?
JSON (JavaScript Object Notation) ist ein reines Textformat für strukturierte Daten. Es ist der Standard für Web-APIs und Konfigurationsdateien, und fast jede Programmiersprache kann es lesen und schreiben.
Ein JSON-Dokument enthält genau einen Wert: ein Objekt mit Schlüssel-Wert-Paaren in geschweiften Klammern, ein Array in eckigen Klammern, einen String in doppelten Anführungszeichen, eine Zahl, true, false oder null. Objekte und Arrays lassen sich beliebig tief verschachteln.
Häufige JSON-Fehler und wie du sie behebst
Die meisten Fehler in JSON entstehen durch Gewohnheiten, die JavaScript, Python oder YAML erlauben, JSON aber nicht: ein Komma nach dem letzten Element, einfache statt doppelter Anführungszeichen, Schlüssel ohne Anführungszeichen, Kommentare und Werte wie undefined, NaN oder Pythons True und None.
Weitere häufige Ursachen sind ein fehlendes Komma zwischen zwei Elementen, ein nicht maskiertes doppeltes Anführungszeichen oder ein nicht maskierter Backslash in einem String sowie typografische Anführungszeichen aus einer Textverarbeitung. Der Validator benennt das genaue Problem und markiert die Stelle – in jedem Browser gleich, auch dort, wo die Fehlermeldung des Browsers selbst vage bleibt.
Formatieren, ohne deine Daten zu verändern
Viele Formatierer lesen das JSON in JavaScript ein und geben es neu aus – und verändern es dabei unbemerkt: Ganze Zahlen über 9.007.199.254.740.991, etwa 64-Bit-IDs, verlieren ihre letzten Stellen, aus 1.0 wird 1, und Escape-Sequenzen werden durch die Zeichen ersetzt, für die sie stehen.
Dieser Formatierer rückt den Text selbst neu ein, sodass jede Zahl und jeder String genau so bleibt, wie du sie geschrieben hast. Beim Sortieren bleiben auch doppelte Schlüssel erhalten, die JavaScript stillschweigend verwerfen würde. Dateien mit mehreren Megabyte sind in Sekundenbruchteilen formatiert; bei sehr großen Ausgaben wird die Syntaxhervorhebung abgeschaltet, damit die Seite flüssig reagiert.
Häufige Fragen
Wie prüfe ich, ob mein JSON gültig ist?
Füge es oben in das Feld ein. Bei gültigem JSON erscheint „Gültiges JSON“ mit Zeilenzahl und Größe; bei ungültigem JSON siehst du, was falsch ist – mit genauer Zeile und Spalte. Die Prüfung folgt dem JSON-Standard (RFC 8259), also denselben Regeln wie JSON.parse in deinem Browser.
Warum ist ein Komma nach dem letzten Element in JSON ein Fehler?
Der JSON-Standard erlaubt kein Komma nach dem letzten Element eines Objekts oder Arrays, auch wenn JavaScript und viele andere Sprachen es zulassen. Entferne das Komma vor der schließenden Klammer, und das JSON ist gültig.
Kann JSON Kommentare enthalten?
Nein. Standard-JSON kennt keine Kommentare, // und /* */ machen es also ungültig. Formate wie JSONC und JSON5 erlauben sie, die meisten Parser aber nicht. Willst du in reinem JSON eine Notiz festhalten, leg dafür einen gewöhnlichen Schlüssel wie "_comment" an.
Was bewirkt das Minifizieren von JSON?
Es entfernt alle Leerzeichen, Tabulatoren und Zeilenumbrüche außerhalb von Strings. Die Daten bleiben identisch, aber die Datei wird kleiner – bei eingerücktem JSON oft um ein Drittel oder mehr. Das beschleunigt API-Antworten und spart Speicherplatz.
Wird mein JSON an einen Server gesendet?
Nein. Formatierung und Validierung laufen komplett in deinem Browser; nichts, was du einfügst, wird hochgeladen oder gespeichert. Sobald die Seite geladen ist, funktioniert das Tool sogar offline.