如何获得具有相同参数的嵌套对象数组

时间:2019-01-22 07:14:21

标签: angular

有人可以帮我尝试在文章数组的内容数组中显示所有标题和内容吗

下面的响应是从数据库中获得的,我将此响应等同于authordetails,只是我给了这样的名字。

authordetails:any=[];

this.authordetails=[ 

          {"_id": "5c1a34ce5e2de421d8e060e5", "article":[ 
          {"content": [ 
                       {"content": "hh", "title": "Abstract" }, 
                       {"content": "gg", "title": "Introduction" }, 
                       {"content": "ii", "title": "Models" } 
         ];

我尝试过这样

this.authordetails[0].article[0].content[0].title

这意味着它在内容数组中仅显示标题的0个对象。

但是我需要所有对象的内容数组中的标题和内容。

预先感谢

2 个答案:

答案 0 :(得分:0)

应该是这样的(伪代码)

for (i=0;this.authordetails[0].article.length;i++) {
    let innerObject = this.authordetails.article[i];
    let content = innerObject.content;
    let title = innerObject.title;
    // more logic goes here
}

答案 1 :(得分:0)

您可以使用:

for (let i = 0; i < this.authordetails.length; i++) {
      console.log('authordetails',this.authordetails[i]);
      for (let j = 0; j < this.authordetails[i].article.length; j++) {
        console.log('article',this.authordetails[i].article[j]);
        for (let k = 0; k < this.authordetails[i].article[j].content.length; k++) {
          console.log('content',this.authordetails[i].article[j].content[k]);
        }
      }
}

请参见Stackblitz