【发布时间】:2014-01-13 16:12:22
【问题描述】:
我正在尝试编写一个返回数组的方法,但返回值为空。我认为这是因为它发生在设置局部变量之前。我也认为我看这个完全错误。谁能说出实现这一目标的最佳模式或实践是什么?代码如下。
// THIS IS MY JAVASCRIPT METHOD
this.getAllMediaTypes = function() {
// MY LOCAL VARIABLE
var allMediaArr = [];
// METHOD I WROTE TO MAKE API CALL
_thisObj.apiCall(_dataUrl + '/media.json?max=' + _thisObj.maxRecords +'&callback=?', function(){
allMediaArr = _apiData.results;
console.log(allMediaArr);//THIS RETURNS THE RIGHT DATA IN THE CONSOLE
});
// WHAT I WOULD LIKE RETURNED
return allMediaArr;// THIS IS RETURNING EMPTY
}
【问题讨论】:
-
可能是因为
apiCall是异步的。 -
stackoverflow.com/questions/14220321/… 这篇文章解决了我的问题。谢谢。
标签: javascript ajax json api