1

$.each得到了 Facebook 好友列表。

这是$.each代码

$.each(response.data, function(index,friend) {
    alert(friend.name + ' has id:' + friend.id);
}

现在我如何将这些数据存储在数组中,就像这个数组一样

friends = [
    { "name": "John"  , "id": "1" },
    { "name": "Anna"  , "id": "2" },
    { "name": "Peter" , "id": "3" }
];
4

2 回答 2

5

$.map就像$.each,但它从函数返回一个返回值数组:

var friends = $.map(response.data, function(index, friend) {
    return {
        name: friend.name,
        id: friend.id
    };
});

虽然……既然您似乎已经拥有具有这些属性的对象数组,为什么不直接使用它呢?

于 2013-08-17T00:14:51.030 回答
2

试试var friends = response.data;

name您可能会获得额外的字段,但 response.data 已经是一个包含和id字段的对象数组。它也可能包含其他字段。

因此,虽然您可以处理response.data$.each消除$.map其他字段,但根据您的应用程序,可能response.data无需进一步处理即可按原样使用。

于 2013-08-17T00:17:02.943 回答