Expected ',' or '}' after property value in JSON at position N (line L column C)
Der Parser hat einen Wert innerhalb eines Objekts zu Ende gelesen und erwartete, dass die Mitgliederliste mit einem Komma weitergeht oder mit einer geschweiften Klammer endet. Er fand etwas anderes. Diese Meldung ist V8s Sammelmeldung für das Innere eines Objekts und deckt daher mehrere verschiedene Fehler ab.
Fügen Sie Ihr JSON ein und sehen Sie genau, wo es bricht
Nichts, was Sie einfügen, verlässt Ihren Browser. Die connect-src Erlaubnisliste macht daraus eine Garantie des Browsers statt eines Versprechens. Selbst überprüfen
Was es tatsächlich auslöst
Sortiert danach, wie oft sich das jeweilige als die Antwort herausstellt.
-
01 Ein fehlendes Komma zwischen Eigenschaften
Die häufigste Ursache, und meist das Ergebnis von Handarbeit im Editor.
Geht kaputt
{ "a": 1 "b": 2 }Funktioniert
{ "a": 1, "b": 2 } -
02 Die Datei ist abgeschnitten
Liegt die Position ganz am Ende der Eingabe, folgte auf den Wert überhaupt nichts mehr. Das ist ein abgeschnittenes Dokument und kein Syntaxfehler. Unser Validator unterscheidet beides und listet auf, welche Klammern offen blieben.
Geht kaputt
{ "a": 1Funktioniert
{ "a": 1 } -
03 Ein Kommentar nach einem Wert
JSON hat keine Kommentare, also erzeugt ein // Notiz nach einem Wert genau das.
-
04 Eine Hexadezimalzahl oder eine andere Nicht-JSON-Zahl
Der Parser liest 0 als vollständige Zahl und findet dann das x, das weder ein Komma noch eine geschweifte Klammer ist. JSON kennt keine Hex-Literale.
Geht kaputt
{ "mask": 0x1F }Funktioniert
{ "mask": 31 }
Derselbe Fehler in anderen Laufzeitumgebungen
Das zugrunde liegende Problem ist identisch; nur der Wortlaut unterscheidet sich. Meldet eine Kollegin eine dieser Zeilen, sieht sie genau dasselbe wie Sie.
| Python | Expecting ',' delimiter: line 1 column 10 (char 9) |
|---|---|
| V8, inside an array | Expected ',' or ']' after array element in JSON at position N |
Häufige Fragen
- Wie unterscheide ich ein fehlendes Komma von einer abgeschnittenen Datei?
- Vergleichen Sie die gemeldete Position mit der Länge Ihrer Eingabe. Sind sie gleich, endete das Dokument zu früh. Unser Validator sagt, was von beidem vorliegt, und benennt bei einem abgeschnittenen Dokument jede nicht geschlossene Klammer samt der Zeile, in der sie geöffnet wurde.
Jetzt beheben
Fügen Sie das Payload in das Werkzeug oben ein, oder gehen Sie direkt zu dem, das für diesen Zweck gebaut wurde.
Genau lokalisieren