2015-08-05 3 views
0

У меня есть массивы из моего ответа json, но мне нужно получить одну конкретную базу массивов при условии. Тем не менее, я сделал несколько тестов, но все равно получаю весь массив.Получение одного определенного массива в группе массива

вот код:

$scope.currentLocationDetails=[]; //this would be the new array 

.success(function(response){ 
       response.forEach(function(res){ 
        if(res.loc_name === $scope.currentLoc){ 
         $scope.currentLocDetails.push(res); 
        } 

вот как это должно работать:

NameDetails[]= {a:[me, you, her], b:[his, mine, theirs]},{a:[we, us, they], b:[them, am, I]}; 

if b=='his' 
newArray[]=[his, mine, theirs] 
+0

Вы получаете выше json в 'response'? т.е. '{a: [меня, вы, ее], b: [его, мой, их]} ...' – Vineet

+0

да, я делаю. это от ответа json –

ответ

0

Я предполагаю, что у Вас есть массив объектов из ответа JSon. Вы делаете небольшие ошибки. Вы можете использовать, как показано ниже.

$scope.currentLocationDetails = []; //this would be the new array 
$scope.currentLoc = 'his'; // store what you want to traverse from response 

.success(function(response){ 
    angular.forEach(response, function(res, key){ 
     if(res.indexOf($scope.currentLoc) > -1){ //check your value exists in array or not 
       $scope.currentLocDetails.push(res); 
     } 

Для дальнейшего чтения я предлагаю вам прочитать, как angular.forEach работы.

+0

он продолжает возвращать 'res.indexOf' не является функцией –

Смежные вопросы