如何将 Facebook Graph API 响应存储为 Javascript 数组?
How to store a Facebook Graph API response as a Javascript Array?
我想知道如何将 Facebook API 调用的响应存储到 Javascript 数组中。
这是我正在拨打的电话:
FB.api('/MYAPPID/scores/?fields=user', function(response) {
for (var i = 0; i < response.data.length; i++){
var grabbedarray = response.data[i].user.id;
console.log(grabbedarray);
}
})
调用 FB.api('/MYAPPID/scores/?fields=user'
returns 一个数据集,数组中的每个元素都有 "name" 和 "id" 属性,但我只对存储"id" 部分数组。
上面的代码遍历调用的响应,它检查数组的每一行中的 user.id
,然后 console.log 显示该行的 ID。这意味着 var grabbedarray
在控制台中多次出现,每次都显示不同的 ID。我明白为什么会这样,但我试图将所有 ID 存储到一个数组中,然后我想 console.log 那个。
所以控制台中的最终结果应该是这样的:
[456345624, 256456345, 253456435727, 376573835, 2652453245]
我尝试将调用更改为 FB.api('/MYAPPID/scores/?fields=user.id'
,希望响应将仅显示 ID 列表,但它不起作用。
有人知道如何解决这个问题吗?
先感谢您!
为了保持您使用的方法,您可以将找到的每个新 ID 推送到您在 for 循环之外定义的数组中。
var idArray = [];
FB.api('/MYAPPID/scores/?fields=user', function(response) {
for (var i = 0; i < response.data.length; i++){
idArray.push(response.data[i].user.id);
}
console.log(idArray);
})
您还可以使用 map
将响应数组转换为您想要的内容。
var idArray = [];
FB.api('/MYAPPID/scores/?fields=user', function(response) {
idArray = response.data.map(function(x){ return x.user.id });
console.log(idArray);
})
我想知道如何将 Facebook API 调用的响应存储到 Javascript 数组中。
这是我正在拨打的电话:
FB.api('/MYAPPID/scores/?fields=user', function(response) {
for (var i = 0; i < response.data.length; i++){
var grabbedarray = response.data[i].user.id;
console.log(grabbedarray);
}
})
调用 FB.api('/MYAPPID/scores/?fields=user'
returns 一个数据集,数组中的每个元素都有 "name" 和 "id" 属性,但我只对存储"id" 部分数组。
上面的代码遍历调用的响应,它检查数组的每一行中的 user.id
,然后 console.log 显示该行的 ID。这意味着 var grabbedarray
在控制台中多次出现,每次都显示不同的 ID。我明白为什么会这样,但我试图将所有 ID 存储到一个数组中,然后我想 console.log 那个。
所以控制台中的最终结果应该是这样的:
[456345624, 256456345, 253456435727, 376573835, 2652453245]
我尝试将调用更改为 FB.api('/MYAPPID/scores/?fields=user.id'
,希望响应将仅显示 ID 列表,但它不起作用。
有人知道如何解决这个问题吗? 先感谢您!
为了保持您使用的方法,您可以将找到的每个新 ID 推送到您在 for 循环之外定义的数组中。
var idArray = [];
FB.api('/MYAPPID/scores/?fields=user', function(response) {
for (var i = 0; i < response.data.length; i++){
idArray.push(response.data[i].user.id);
}
console.log(idArray);
})
您还可以使用 map
将响应数组转换为您想要的内容。
var idArray = [];
FB.api('/MYAPPID/scores/?fields=user', function(response) {
idArray = response.data.map(function(x){ return x.user.id });
console.log(idArray);
})