Javascript 从AngularJS控制器中的嵌套json获取父数据

Javascript 从AngularJS控制器中的嵌套json获取父数据,javascript,json,angularjs,Javascript,Json,Angularjs,作为我的标题,我想从嵌套的json中获取父数据。 我知道如何用HTML来做。我想知道如何在控制器中实现这一点 下面是我的指令和嵌套json .factory('dataFac', function(){ return { parents : [{ name: 'George', age: 44, children: [{ name: 'Jack', age: 16 },{

作为我的标题,我想从嵌套的json中获取父数据。 我知道如何用HTML来做。我想知道如何在控制器中实现这一点

下面是我的指令和嵌套json

.factory('dataFac', function(){
return {
    parents : [{
        name: 'George',
        age: 44,
        children: [{
            name: 'Jack',
            age: 16
        },{
            name: 'Amy',
            age: 13
        }]
    }, {
        name: 'Jimmy',
        age: 38,
        children: [{
            name: 'Max',
            age: 7              
        },{
            name: 'Lily',
            age: 5
        },{
            name: 'Kim',
            age: 4
        }]
    }]
}})
控制器

.controller('dataCtrl', function($scope, $location, dataFac) {
  $scope.data = dataFac.parents;

  //here I'd like to get name of parents
  $scope. = ;

  //here I'd like to get name of children
  $scope. = ;

  //and when I get the data of the children, I can get their parents' name
  $scope. = ;

  console.log($scope.navbars.id);

  $scope.isActive = function(route) {
      return route === $location.path();
  };})

如果有人能提供帮助,我们将不胜感激。

您可以使用angularjs中的forEach函数获取家长和孩子的姓名,并通过json数据进行循环

这是密码

app.controller('myController', function($scope, dataFac) {
 $scope.data = dataFac.parents;
 $scope.parentsName = [];
 $scope.childName = [];
//here I'd like to get name of parents

 angular.forEach(dataFac.parents, function(parent) {
    $scope.parentsName.push({
     name: parent.name
    });
     angular.forEach(parent.children, function(child) {
      //here I'd like to get name of children

      $scope.childName.push({
       childName: child.name,
       parentName: parent.name
      });
    });
 });
});
更新: 如果需要,将父名称推送到子数组中并从那里访问它

这是正在工作的plunker和代码


希望这有帮助

是否父项名称不在
$scope.data[i].name
?@TuanAnhTran如果我想获取所有的父项名称?请通过
$scope.data
查看?谢谢!它工作得很好!还有一个问题,如果我想从儿童数组中得到父母的名字怎么办?@Gloria我认为孩子们的名字是独一无二的。您可以循环浏览父项,然后再次循环浏览子项列表,找到时返回。这很直截了当。@AlhuckA非常感谢你的回答。我想我把事情弄复杂了。很清楚!