Javascript Can';无法访问json数据
我知道这是一个简单的问题,但我无法访问json对象中的数据。看起来是这样的:Javascript Can';无法访问json数据,javascript,html,json,Javascript,Html,Json,我知道这是一个简单的问题,但我无法访问json对象中的数据。看起来是这样的: var string={"data": [ { "city": "Gansu", "value": "#000" }, { "city": "Ningzhau", "value": "#000" }, { "city": "Chongqing",
var string={"data":
[
{
"city": "Gansu",
"value": "#000"
},
{
"city": "Ningzhau",
"value": "#000"
},
{
"city": "Chongqing",
"value": "#000"
}
]
};
var obj =JSON.parse(string);
var string = '{"data":[{"city": "Gansu","value": "#000"},{"city": "Ningzhau","value": "#000"},{"city": "Chongqing","value": "#000"}]}';
// ----------^-----------------------------------------------------------------------------------------------------------------------^
var obj = JSON.parse(string);
document.write(obj.data[0].city);
为了测试它,我正在做:document.write(obj.data[0].city)代码>我认为应该返回甘肃
有人能告诉我最后一行代码有什么问题以及如何修复它吗?谢谢。您忘记在JSON数据周围添加引号,因此它实际上是一个对象。需要一个字符串。它应该是这样的:
var string={"data":
[
{
"city": "Gansu",
"value": "#000"
},
{
"city": "Ningzhau",
"value": "#000"
},
{
"city": "Chongqing",
"value": "#000"
}
]
};
var obj =JSON.parse(string);
var string = '{"data":[{"city": "Gansu","value": "#000"},{"city": "Ningzhau","value": "#000"},{"city": "Chongqing","value": "#000"}]}';
// ----------^-----------------------------------------------------------------------------------------------------------------------^
var obj = JSON.parse(string);
document.write(obj.data[0].city);
“string”已经是一个对象,无需转换
只需执行string.data[0].city代码>或者您不应该解析JSON:
var string={"data":
[
{
"city": "Gansu",
"value": "#000"
},
{
"city": "Ningzhau",
"value": "#000"
},
{
"city": "Chongqing",
"value": "#000"
}
]
};
alert(string.data[0].city);