我使用$.get
得到的回复是:
{
"data": [
{
"uid": 12345678,
"online_presence": "offline"
}
]
}
我也试过$.getJSON
但没有运气。我的代码部分是(数据变量保存上面的响应):
var zzz=JSON.stringify(data)
var obj = jQuery.parseJSON(zzz);
alert(Object.keys(obj).length);
返回1.然而,Chrome调试器表示不存在obj[0].uid
或obj[1].uid
这样的问题。为什么我不能访问uid或online_presence?
答案 0 :(得分:1)
使用:
JSON.parse(data);
或者在请求中使用dataType选项; jQuery会为你转换它
$.get('yoururl',function(o) { alert(o.data[0].uid); },'json'});
答案 1 :(得分:0)
试试这个:
alert(obj.data[0].uid);
答案 2 :(得分:0)
您无法像数组一样访问对象的属性,因为这些键不是有序整数。
您必须明确使用属性键,例如
console.log(obj.data[0].uid)
;
如果您可以记录obj
,那么您知道它存在。