繁体   English   中英

如何从带有对象的数组数组中返回对象数组?

[英]How to return array of objects from array of array with objects?

我有这样的数组:

  let findAllSegmentProjectMediaFilesXref = [
{
  it: 0,
  bt: 0,
  items: [
    {
      mute: false,
      startPosition: 10,
      endPosition: 20,
      displayLength: 100,
      projectMediaFiles: {
        id: '123124'
      }
    }
  ]
},
{
  it: 9,
  bt: 10,
  items: [
    {
      mute: false,
      startPosition: 10,
      endPosition: 20,
      displayLength: 100,
      projectMediaFiles: {
        id: '1231231124'
      }
    }
  ]
},
{
  it: 2,
  bt: 2,
  items: [
    {
      mute: false,
      startPosition: 10,
      endPosition: 30,
      displayLength: 100,
      projectMediaFiles: {
        id: '123111124'
      }
    }
  ]
}

但我需要得到这样的对象数组:

    mute: elem.mute,
    startPosition: elem.startPosition,
    endPosition: elem.endPosition,
    displayLength: elem.displayLength,
    projectMediaFile: {
      //@ts-ignore
      id: elem.projectMediaFile.id,
    }

我试图做这样的事情,但它不起作用,有人可以帮助我吗?

    const arr =  findAllSegmentProjectMediaFilesXref?.map(x => x.segment.id === currentSegment?.id ? x.items.map(elem => {
  
    mute: elem.mute,
    startPosition: elem.startPosition,
    endPosition: elem.endPosition,
    displayLength: elem.displayLength,
    projectMediaFile: {
      //@ts-ignore
      id: elem.projectMediaFile.id,
    }
  
}) : null).filter(el => el !== null);

您可能正在寻找flat / flatMap

findAllSegmentProjectMediaFilesXref.map(e => e.items).flat()

大概是这样的?

    let newArray = findAll.map(object => object.items[0]});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM