我一直在研究这个问题,我已经在 web 和 stackoverflow 中搜索了解决方案,但我无法准确了解错误。
这是通过 ajax 调用来自服务器的 json 字符串。
{root:{name: "root",description: "root description",checked: false,1:{name: "item1",description: "item1 description",checked: true,1.1:{name: "item1.1",description: "item1.1 description",checked: true}}, 2:{name: "item2",description: "item2 description",checked: true}}}
使用下面的代码我得到字符串之后xmlhttp.readyState == 4 && xmlhttp.status == 200
var aData;
try{
aData =JSON.parse(xmlhttp.responseText);
}
catch(err){
alert(err);
}
它显示了类似的错误
Json.parse expected property name or '}'
但如果使用 eval() 函数它工作正常
var aData;
try{
aData =eval('(' + xmlhttp.responseText + ')');
}
catch(err){
alert(err);
}
请解释这里的错误是什么。
谢谢。
编辑:
我已经检查了 json 查看器中的字符串,它工作正常。http://jsonviewer.stack.hu/">