Javascript数组推送不起作用

时间:2013-08-12 20:40:24

标签: javascript arrays angularjs

我被困在为什么这个数组推送不起作用...任何帮助赞赏。

    var addons = new Array();

    myService.addon_dependencies(arr[i]['addoncode']).then(function(dependency) {
        console.log(dependency[0].addon_depend);  //returns A6002
        addons.push(dependency[0].addon_depend);
    });

    console.log(addons); //returns []   

3 个答案:

答案 0 :(得分:3)

这是因为在运行console.log之前,addon_dependencies方法尚未完成。 then方法显示您可能正在使用某种承诺框架。如果你在then块中打印它应该可以工作。

答案 1 :(得分:1)

Array.push正在运作;您的代码必须异步执行,因此为空addons

答案 2 :(得分:0)

在将项目推入阵列之前执行console.log(add ons)。所以你看到空数组。 将新项目推入其中后尝试使用console.log。