Javascript (Appcelerator Titanium) 多维数组解析不起作用
Javascript (Appcelerator Titanium) Multidimensional Array parse doesn't work
我在解析多维数组时遇到问题,我从 facebook 得到这个作为答案:
在 e.result
我有这个:
{
"data":[
{
"name":"Linda Kase",
"id":"1393034660999695"
},
{
"name":"Dick Typ",
"id":"1376046576034204"
},
{
"name":"a a",
"id":"1388801108093951"
},
{
"name":"b b",
"id":"1382328532076389"
}
],
"paging": {
"next":"https:\/\/graph.facebook.com\/v2.2\/1378163649155341\/friends?format=json&access_token=XXXXXXXXXXXXXXXXXXX"
},
"summary":{
"total_count":8
}
}
这是我解析它的代码:
Ti.App.fb.requestWithGraphPath('me/friends',false, 'GET', function(e){
if(e.success){
var result = e.result;
alert(result.data[0].name);
}
});
我总是收到这个:
Uncaught TypeError: Cannot read property '0' of undefined
有人知道为什么它不起作用吗?我也试过 JSON.stringify
和 JSON.parse
e.result
谢谢!
你必须使用:
var result = JSON.parse(e.result);
alert(result.data[0].name);
因为你得到的是字符串,而不是数组
我在解析多维数组时遇到问题,我从 facebook 得到这个作为答案:
在 e.result
我有这个:
{
"data":[
{
"name":"Linda Kase",
"id":"1393034660999695"
},
{
"name":"Dick Typ",
"id":"1376046576034204"
},
{
"name":"a a",
"id":"1388801108093951"
},
{
"name":"b b",
"id":"1382328532076389"
}
],
"paging": {
"next":"https:\/\/graph.facebook.com\/v2.2\/1378163649155341\/friends?format=json&access_token=XXXXXXXXXXXXXXXXXXX"
},
"summary":{
"total_count":8
}
}
这是我解析它的代码:
Ti.App.fb.requestWithGraphPath('me/friends',false, 'GET', function(e){
if(e.success){
var result = e.result;
alert(result.data[0].name);
}
});
我总是收到这个:
Uncaught TypeError: Cannot read property '0' of undefined
有人知道为什么它不起作用吗?我也试过 JSON.stringify
和 JSON.parse
e.result
谢谢!
你必须使用:
var result = JSON.parse(e.result);
alert(result.data[0].name);
因为你得到的是字符串,而不是数组