Ratgeber · JSON 2026
JSON-Syntax-Fehler: 7 Fallen und wie man sie löst
Welche JSON-Fehler ein deutsches Hosting-Team am häufigsten verfolgt, wie die Browser-Fehlermeldungen interpretiert werden und welche Tools beim Debuggen helfen.
Von Mateusz Viola
Betreiber & redaktionelle Verantwortung json-formatieren.de
Veröffentlicht
Aktualisiert:
Warum JSON-Fehler so häufig sind
JSON ist strikt - viel strikter als JavaScript-Object-Literale. Wer aus dem JS-Habitus kommt, übernimmt unbewusst Konventionen die im JSON ungültig sind. Die folgenden sieben Fallen tauchen in 90 % aller Parse-Fehler auf.
Die 7 häufigsten Syntax-Fehler
| # | Fehler | Beispiel | Fix |
|---|---|---|---|
| 1 | Trailing-Comma | {"a": 1,} | Letztes Komma raus |
| 2 | Single-Quotes | {'a': 1} | Auf Double-Quotes umstellen |
| 3 | Unzitierte Keys | {a: 1} | Key mit "" umschließen |
| 4 | Kommentare | {"a": 1 // x} | Kommentar raus oder JSONC parsen |
| 5 | BOM am Datei-Anfang | EF BB BF Bytes | UTF-8 ohne BOM speichern |
| 6 | Backslash in Strings | "C:\Users" | Auf "C:\\Users" escapen |
| 7 | NaN/Infinity | {"x": NaN} | Als String oder null repräsentieren |
Trailing-Comma im Detail
Mit Abstand der häufigste Fehler. JavaScript erlaubt seit ES2017 trailing Commas in Object- und Array-Literalen - JSON nicht. Wer JSON aus Hand schreibt oder generiert, sollte das letzte Komma weglassen:
// FALSCH
{
"name": "Mateusz",
"age": 30,
}
// RICHTIG
{
"name": "Mateusz",
"age": 30
}
Fehlermeldungen lesen
V8 (Chrome/Node.js) gibt typisch SyntaxError: Unexpected token X in JSON at position N. Die position ist der Byte-Offset im String. Praktischer Tipp: bei großen Dokumenten den Offset in einer Zeilen-/Spalten-Berechnung umrechnen - die meisten Editoren zeigen Cursor-Position als (Zeile, Spalte).
Firefox-SpiderMonkey ist gnädiger und liefert JSON.parse: unexpected character at line N column M. Safari-JavaScriptCore meldet ähnlich.
BOM-Encoding-Falle
Besonders unter Windows generieren PowerShell und Notepad gerne UTF-8-Dateien mit BOM (Byte Order Mark - die drei Bytes EF BB BF am Datei-Anfang). RFC 8259 verbietet das. Die Folge: Unexpected token in JSON at position 0. Lösung: Editor auf "UTF-8 ohne BOM" stellen (VS Code: Status-Bar rechts unten klicken). In PowerShell: Set-Content -Encoding utf8NoBOM.
Validierungs-Werkzeuge
- Online-Formatter (wie dieses Tool) - schnellster Weg für Ad-hoc-Checks
- jq -
jq . file.jsonvalidiert und pretty-printed - Node.js -
node -e "JSON.parse(require('fs').readFileSync('file.json'))" - Python -
python -m json.tool file.json - VS Code - integriertes JSON-Linting, zeigt Fehler im Editor-Gutter
Vorbeugen statt suchen
Wer JSON aus Code generiert: nie String-Concatenation, immer den nativen Serializer (JSON.stringify, json.dumps, json.Marshal). Wer JSON aus Shell baut: jq statt printf. In CI-Pipelines: jeden generierten JSON-Output mit einem Parse-Schritt verifizieren - bevor die Datei in Produktion landet.