# Frage: Uncaught SyntaxError: JSON.parse: expected property name or '}'



## pkm (18. Aug 2020)

Ich verstehe nicht, wieso ein Fehler kommt, wenn ich der Methode JSON.parse() folgenden String als Argument übergebe:

var str = '{title: "<a href="#" onclick="javascript:welcomeAndRubricFunction()">Autorubrik</a>", last: "Letzter Beitrag:"}';

Bei JSON.parse(
var str = '{title: "<a href="#" onclick="javascript:welcomeAndRubricFunction()">Autorubrik</a>", last: "Letzter Beitrag:"}'
)

Denn es kommt der Fehler:  Uncaught SyntaxError: JSON.parse: expected property name or '}' at line 1 column 2 of the JSON data 


Entweder ich war jetzt völlig blind, aber anhand von dem hier ... https://developer.mozilla.org/de/do...m=firefox-console-errors&utm_campaign=default 

...habe ich keinen Fehler erkennen können. Daher wollte ich mal fragen, falls jemand viel Erfahrung mit JavaScript hat, woran liegt das?



```
<!DOCTYPE html>
<html>
<body>

<script>
var str = '{title: "<a href="#" onclick="javascript:welcomeAndRubricFunction()">Autorubrik</a>", last: "Letzter Beitrag:"}';

console.log(JSON.parse(str));//Ergibt: Uncaught SyntaxError: JSON.parse: expected property name or '}' at line 1 column 2 of the JSON data

//str = "{title: "<a href="#" onclick="javascript:welcomeAndRubricFunction()">Autorubrik</a>", last: "Letzter Beitrag:"}";

//console.log(JSON.parse(str));//Ergibt: Uncaught SyntaxError: unexpected token: identifier

</script>

</body>
</html>
```


----------



## mrBrown (18. Aug 2020)

Da sind gleich zwei Fehler versteckt:

Einmal müssen alle property-Namen in Anführungszeichen stehen (title und last).
Und dann solltest du dir mal den Wert für title genauer angucken 

Je nachdem welche IDE du nutzt: Die von IntelliJ können Syntax-Highligthing für JSON in Strings, falls du eine entsprechende nutzt solltest du das aktivieren


----------



## fhoffmann (18. Aug 2020)

Du hast doppelte Anführungszeichen innerhalb von doppelten Anführungszeichen.


----------



## pkm (18. Aug 2020)

Vielen Dank für Eure schnelle Hilfe. Es tut mit echt leid, dass ich dennoch eine weitere Frage stellen muss. Denn in der Tat muss die Tatsache, dass ich nach wie vor einen Fehler bekomme, an dem html liegen, das den value von "title" darstellt.
Ich habe mir jetzt echt einen Wolf escaped, aber der Fehler kommt immernoch, und ich bin mir sicher, dass das nicht an <, >, :, ( oder ) liegt. Könnte mir da eventuell noch jemand nen Tipp geben? Das wäre sehr ersprießlich für mich 


```
<!DOCTYPE html>
<html>
<body>
<script>
var str = '{"title": "<a href=\"#\" onclick=\"javascript:welcomeAndRubricFunction()\">Autorubrik<\/a>", "last": "Letzter Beitrag:"}';

console.log(JSON.parse(str));

</script>
</body>
</html>
```


----------



## mrBrown (18. Aug 2020)

Doppelten Backslash zum escapen nehmen


----------



## pkm (18. Aug 2020)

Danke.


----------

