两个对象数组和concat

时间:2016-04-22 10:21:09

标签: arrays angularjs concat

我有两个连接到范围的数组(http get等):

$scope.allShops 

包含所有商店详情和

$scope.allCds 

持有所有CD的

两者都工作正常,Ng-Repeat给了我所需的所有输出(单独),但是我希望建立一个搜索,允许我在相同的搜索字段中搜索cd名称和商店名称(使用标签提及它是商店还是CD以避免混淆)。所以我想出了这个:

$scope.allShops = [];
$scope.allCds = [];

var jointData1 = '';
var jointData2 = '';
var SearchAll = '';

    var jointData1 = $scope.allShops;
    console.info(jointData1);

    var jointData2 = $scope.allCds;
    console.info(jointData2);

    var searchAll = jointData1.concat(jointData2);
    console.info(searchAll)

但所有日志都是空的,如果我将日志放在succes.array函数中,它会向我显示数据对象,但放置带有范围的日志不会给我任何东西。如何获取数组函数之外的数据并能够连接两个范围?

2 个答案:

答案 0 :(得分:1)

您的console.info调用将为空,因为$ http服务还没有恢复数据。

在使用承诺({{1}})

返回数据后,您必须执行此操作

答案 1 :(得分:0)

试试这个

function merge_options(obj1,obj2){
        var obj3 = {};
        for (var attrname1 in obj1) {
            obj3[attrname1] = obj1[attrname1];
        }
        for (var attrname2 in obj2) { obj3[attrname2] = obj2[attrname2]; }
        return obj3;
    }
merge_options(obj1,obj2);