2017-01-15 4 views
0

У меня есть contoroller:преобразование массива в объект angularjs

$scope.getFromDB=function(data) 
{ 
    $scope.nameSelected=[]; 
    var myCookie=$cookie.get("nameCookie"); 
    $scope.names= data; 
for(var i=0; i<$scope.names.length;i++) 
{ 
    if($scope.names._id=myCookie._id) 
    { 
     $scope.nameSelected.push($scope.names[i]); 
     } 
    } 

Я хочу показать пользователь ПгвЬЫата, ОТЧЕСТВО, ФАМИЛИЯ хранится в $scope.nameSelected, так как nameSelected в виде массива, имя заводится в массиве nameSelected[0].firstname, nameSelected[0].middlename, nameSelected[0].lastname. Итак, как преобразовать его в object, так что легко получить доступ к именам.

ответ

1

Из того, что вы написали, вам совсем не нужен массив, просто используйте объект. Изменить это:

$scope.nameSelected=[]; 
... 
$scope.nameSelected.push($scope.names[i]); 

в

$scope.nameSelected = null; 
... 
$scope.nameSelected = $scope.names[i]; 
0

Основываясь на том, что вы упомянули в своем вопросе, это уже объект в индексе 0 вашего nameselected массива, Это означает, что делает,

$scope.nameselected[0] 

должен дать вам это,

{firstName : "Robert", middlename :"Downy", lastName:"junior"} 

Аналогично, для всех имен, как в цикле,

$scope.nameselected = $scope.names[i] 

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

  • Нет связанных вопросов^_^