两个对象数组和连接

Two Objects arrays and 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 函数中,它会向我显示数据对象,但将日志放在范围之外却什么也没有给我。我如何获取数组函数之外的数据并能够连接两个范围?

试试这个

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);

您的 console.info 调用将是空的,因为 $http 服务尚未取回数据。

您必须在使用承诺 (.then()) 返回数据后执行此操作