Javascript试图将回调结果存储到对象中时出现问题
我正在做一个RSS提要抓取,获取数据的值并将它们放入一个对象中 我尝试附加一个方法调用,该方法从同一对象中获取另一个键/值对,然后传入并返回方法回调函数的结果 我有问题 有什么想法吗Javascript试图将回调结果存储到对象中时出现问题,javascript,Javascript,我正在做一个RSS提要抓取,获取数据的值并将它们放入一个对象中 我尝试附加一个方法调用,该方法从同一对象中获取另一个键/值对,然后传入并返回方法回调函数的结果 我有问题 有什么想法吗 for(var z = 0; z < Submit_movies_feedData.items.length; z++){ sixNineContent = { title : Submit_movies_feedData.items[z].title, pubDate : Submit_
for(var z = 0; z < Submit_movies_feedData.items.length; z++){
sixNineContent = {
title : Submit_movies_feedData.items[z].title,
pubDate : Submit_movies_feedData.items[z].pubDate,
image : Submit_movies_feedData.items[z].image,
link : Submit_movies_feedData.items[z].link,
adfly : adfly.short(this.link,function(urlAdfly){
return urlAdfly;
});
};
}
for(var z=0;z
adfly.short
是一个异步函数,因此回调函数的工作方式与您编写的方式不同。您需要等待结果,然后才能将其添加到对象中。在异步函数完成后生成对象:
for(var z = 0; z < Submit_movies_feedData.items.length; z++){
adfly.short(this.link,function(urlAdfly){
return urlAdfly;
sixNineContent = {
title : Submit_movies_feedData.items[z].title,
pubDate : Submit_movies_feedData.items[z].pubDate,
image : Submit_movies_feedData.items[z].image,
link : Submit_movies_feedData.items[z].link,
adfly : adfly
};
})
}
for(var z=0;z
基本上,我希望能够获取链接值并传递到adfly值中,结果将存储到objects键adfly中。您遇到了什么问题?sixNineContent.adfly
的预期值是多少?当前脚本的预期值是多少?adfly.short做什么?我继续得到一个未定义的。。。adfly.short是一个简单的npm,非常有效,它是一个缩短url服务。。。但是当我尝试返回adfly.short的值并将该值放入sixNineContent.adfly。。。我没有定义…是的,完全正确。。。但是,我如何等待返回的objects async函数完成,然后在它完成时存储值呢?您可以在回调中分配变量sixNineContent
。我尝试了您的建议,但没有得到adfly对象的数据。