2017-01-15 12 views
0

をangularjs私はcontorollerを持っている:変換配列が

$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]); 
     } 
    } 

私はnameSelectedは、アレイ状にあることから、$scope.nameSelectedに保存されている姓、middlename、ユーザーのファーストネームを表示したい場合は、名前の配列になっていますnameSelected[0].firstname,nameSelected[0].middlename,nameSelected[0].lastname。だから、それをobjectに変換する方法は、簡単に名前にアクセスすることです。

答えて

1

あなたが書いたことから、配列はまったく必要なく、オブジェクトを使うだけです。 変更するには、この:あなたがあなたの質問に言及してきたものに基づいて

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

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

、それはすでにあなたのnameselected配列のインデックス0のオブジェクトである、ということを意味、やって、

$scope.nameselected[0] 

あなたにこれを与える必要があり、

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

同様に、ループ内のすべての名前について、

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