如何从弹性搜索中获取索引的字段?

时间:2015-01-23 11:35:41

标签: javascript html json angularjs

我有弹性搜索返回的JSON对象,如下所示,我可以使用它来获取数据,

  $scope.results = response.hits.hits;
     console.log($scope.results);
     var resultstofilter = [];
     var resultArray = [];
     for (var i=0; i<$scope.results.length; ++i) {
      var result = $scope.results[i];
      resultstofilter[i] = {};
      for (var key in result) {
      if (key === '_source' || key === 'Calls') {
           var Oriobj = result[key];
           resultArray.push(Oriobj);
           console.log(resultArray);
           $scope.resultData =  resultArray;


         }
       }
     }
     for(var key in $scope.resultData) {

      }
});

结果:

enter image description here 我需要获取索引的字段。在这个样本中说。

Agent
Calls

有没有办法可以直接获得密钥的价值,就像我们在c#中做的那样。这样的事情,

$scope.resultData["key"];

1 个答案:

答案 0 :(得分:1)

有很多方法。其中之一是使用underscore _.pluck

var getIndex = _.pluck($scope.resultData,'_index');

$scope.resultData.filter(function(myObject) {
    for (var prop in myObject) {
        if (myObject.hasOwnProperty(prop)) {
            $scope.fieldsOfIndex.push(prop);
        }
    }
});