在回调后返回局部变量

时间:2014-01-13 16:12:23

标签: javascript ajax json api

我正在尝试编写一个返回数组的方法,但返回值为空。我认为这是因为它在设置局部变量之前发生。我也认为我完全错了。任何人都能说出实现这一目标的最佳模式或实践吗?代码如下。

// 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       
}

1 个答案:

答案 0 :(得分:1)

我认为你正在对api进行异步调用。让它同步。