我正在为一个文本文件的解析器工作。我试图将一些JSON字符串解析为对象,这样我就可以在webapp页面上轻松显示一些不同的值(使用flask)。我正在使用jinja2将字符串传递到我的html页面,并尝试在javascript中解析它们的对象。
function parseLine(x) {
var obj = JSON.parse(x);
document.write(obj.timestamp1);
}
我收到此错误:
SyntaxError:JSON.parse:期望的属性名称或'}'在JSON数据的第1行第2行
在控制台浏览器中。我发现了许多带有该错误的stackoverflow问题,但这些建议并没有解决我的问题。
如果我使用虚拟字符串,用单引号括起来:'{"test": "1234"}'
它可以正常工作。
如果我需要包含更多信息,我可以。
答案 0 :(得分:0)
有类似问题,但能够使用
以这种方式解决它在JSON.parse()
上复活参数
var Person = {}
// an empty person object
//sample json object, can also be from a server
var sampleJson = {'name': 'Peter', 'age': "20"};
//use the javascript Object.assign method to transfer the json from the source[JSON.parse]to the target[Person]
// the source is JSON.parse which take a string argument and a function reviver for the key value pair
Object.assign(Person, JSON.parse(JSON.stringify(sampleJson),
function (k, v) {
//we return the key value pair for the json
return k, v
}
)
)
console.log(Person.name) //Peter
console.log(Person.age) // age