2016-05-03 3 views
0

В настоящее время я получаю значение объектов в $ scope.validuser, но я хочу, чтобы это было в форме массива, как я могу хранить значение объекта в массиве i jst хочет хранить $ scope.validuser в массиве, т. Е. Array [object]Объект массива в angularjs

$scope.sportIds = []; 
      angular.forEach($scope.users, function(value, key){ 
       $scope.sportIds[value.sport_id] = value.sport_id; 
       if($scope.sportIds[value.sport_id] == 3){ 
        $scope.validuser = value; 
        } 
       }); 
+0

Очень неясно. Скажем, ваш объект '{id: 42, name: 'Jimmy', age: 27}'. Что должен содержать массив? –

+0

Насколько я понял ваш вопрос, вы хотите, чтобы '$ scope.validuser' был массивом, включая значение для каждого индекса - правильно? – Aer0

ответ

1

Это даст вам массив, содержащий только пользователей:

$scope.validuser = $scope.users.filter(function(user) { 
    return user.sport_id === 3; 
}); 
-1

Сначала определите $ scope.validuser как массив, как этот

$scope.validuser = []; // declaring new empty array 

и в состоянии раздвинуть значения, как это

$scope.validuser.push(value); 
+1

'Объект' не имеет метода' push' – Hitmands

+0

Просто неверное объявление - вы объявляете новый объект, а не массив! – Aer0

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