为什么我无法使用JSON.parse()解析此JSON字符串

时间:2016-05-31 17:59:05

标签: javascript arrays json

我有这个JSON字符串:

[{'Datum': 1465689600, 'Anwesend': false},{'Datum': 1465603200, 'Anwesend': false},{'Datum': 1465516800, 'Anwesend': false},{'Datum': 1465430400, 'Anwesend': false},{'Datum': 1465344000, 'Anwesend': false},{'Datum': 1465257600, 'Anwesend': false},{'Datum': 1465171200, 'Anwesend': false}]

我要解析这个String。我试过了:

var res = $.parseJSON(anwesendstr);

var res = JSON.parse(anwesendstr);

但每次我得到一个:

SyntaxError: Unexpected token ' in JSON at position 2

异常

我可以帮助我解决这个问题吗?

1 个答案:

答案 0 :(得分:6)

在JSON中,字符串和对象属性名称必须用双引号括起来。您的字符串用单引号括起来。将其更改为:

[{"Datum": 1465689600, "Anwesend": false},{"Datum": 1465603200, "Anwesend": false},{"Datum": 1465516800, "Anwesend": false},{"Datum": 1465430400, "Anwesend": false},{"Datum": 1465344000, "Anwesend": false},{"Datum": 1465257600, "Anwesend": false},{"Datum": 1465171200, "Anwesend": false}]

它会起作用。

您应该使用库函数来创建JSON,而不是构建它 手动编写代码,以避免这样的问题。库也将正确地转义JSON中的嵌入式引号和斜杠。