我的node.js应用程序出了问题。 我正在尝试使用JSON.parse解析字符串,如下所示:
try{
skills = JSON.parse(user.skills);
}catch(e){
console.log(e);
}
在user.skills中我有这样一个字符串:
"[ { name: Dreamweaver, level: 60 }, { name: Phototshop, level: 80 }]"
它引发了我:[SyntaxError:意外的令牌n]。 有谁能够帮我? 在此先感谢:)
答案 0 :(得分:2)
您的JSON数据不正确。字符串周围应该引用""
。
应该是这样的
var str = "[ { \"name\": \"Dreamweaver\", \"level\": 60 }, { \"name\": \"Phototshop\", \"level\": 80 }]"
如果你想看看应该如何成为一个合适的JSON字符串试试这个
var data = {name:"mark"}
JSON.stringify(data) //returns "{"name":"mark"}" Here you have to care about escaping quotes.
答案 1 :(得分:0)
JSON数据需要标识符和值为字符串,请尝试以下方法:
'[ { "name": "Dreamweaver", "level": "60" }, { "name": "Phototshop", "level": "80" }]';
答案 2 :(得分:0)
您可以使用http://jsonlint.com/来验证json。之后我们可以分别对json进行字符串化和解析。