gpt4 book ai didi

javascript - 在 JavaScript 中使用 for 循环向 Facebook 运行多个 ajax 请求并检索页面的点赞时出现问题

转载 作者:行者123 更新时间:2023-12-02 18:13:59 25 4
gpt4 key购买 nike

我正在尝试向 facebook 运行 x 个 ajax 请求并将数据对象存储在数组中,以便我可以使用页面上的数据。例如我想使用这样的方式调用数据:dataStore[0].data.likes

我在将 ajax 请求检索的数据对象推送到数组时遇到了问题。感谢您提供的任何帮助!

var busNames = ['page1', 'page2', 'page3', 'page4', 'page5', 'page6'];
var dataStore = [];

for(i=0; i<busNames.length; i+=1){
$.ajax({
url: 'http://graph.facebook.com/' + busNames[i] +'/?limit=5&callback=?',
dataType: 'json',
success: function(data, status) {
dataStore.push(data);
},
error: function(data, e1, e2) {console.log(data + e1 + e2);
}
});// end ajax

}// end loop

console.log( busNames[0] + " Likes: " + dataStore[0].data.likes);
console.log( busNames[1] + " Likes: " + dataStore[1].data.likes);
console.log( busNames[2] + " Likes: " + dataStore[2].data.likes);
console.log( busNames[3] + " Likes: " + dataStore[3].data.likes);
console.log( busNames[4] + " Likes: " + dataStore[4].data.likes);
console.log( busNames[5] + " Likes: " + dataStore[5].data.likes);

JSFiddle:http://jsfiddle.net/BJPvs/

最佳答案

实际上,您的代码工作正常,但最终在将数据推送到 dataStore 数组之前执行了 6 次打印到控制台的操作。这是因为 success 函数是一个回调。因此,如果您在回调中打印到控制台,您将看到所有数据都被推送到数组中:-)

var busNames = ['cocacola', 'apple', 'mtndew', 'drpepper', 'page5', 'page6'];
var dataStore = [];

for(i=0; i<busNames.length; i+=1){
$.ajax({
url: 'http://graph.facebook.com/' + busNames[i] +'/?limit=5&callback=?',
dataType: 'json',
success: function(data, status) {
dataStore.push(data);
console.log(dataStore);
},
error: function(data, e1, e2) {console.log(data + e1 + e2);
}
});// end ajax
}// end loop
// });

/*console.log( busNames[0] + " Likes: " + dataStore[0].data.likes);
console.log( busNames[1] + " Likes: " + dataStore[1].data.likes);
console.log( busNames[2] + " Likes: " + dataStore[2].data.likes);
console.log( busNames[3] + " Likes: " + dataStore[3].data.likes);
console.log( busNames[4] + " Likes: " + dataStore[4].data.likes);
console.log( busNames[5] + " Likes: " + dataStore[5].data.likes);*/

JSFiddle:http://jsfiddle.net/BJPvs/1/

关于javascript - 在 JavaScript 中使用 for 循环向 Facebook 运行多个 ajax 请求并检索页面的点赞时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19470376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com