将数组转换为对象angularjs

时间:2017-01-15 18:52:10

标签: angularjs object angularjs-scope

我有一个控制器:

$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,{{1} },nameSelected[0].middlename。因此,如何将其转换为nameSelected[0].lastname,以便轻松访问名称。

2 个答案:

答案 0 :(得分:1)

根据您所写的内容,您根本不需要数组,只需使用对象即可。 改变这个:

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

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

答案 1 :(得分:0)

根据您在问题中提到的内容,它已经是0数组索引nameselected的对象,这意味着,正在执行,

$scope.nameselected[0]

应该给你这个,

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

同样,对于循环中的所有名称,

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