创建数组并将对象推入数组后,对象是[Object],而不是实际数据

编程入门 行业动态 更新时间:2024-10-07 21:38:26

创建<a href=https://www.elefans.com/category/jswz/34/1771288.html style=数组并将对象推入数组后,对象是[Object],而不是实际数据"/>

创建数组并将对象推入数组后,对象是[Object],而不是实际数据

在节点中,我试图将对象数组从S3(解析时超级烦人的响应)转变为更可用的前端。初始对象格式为:

[
  {
    Key: 'some/folder/structure/file.jpg',
    LastModified: 2020-05-14T02:16:59.000Z,
    ETag: '"SomeETag"',
    Size: 83630,
    StorageClass: 'STANDARD'
  }
]

我正在尝试将其更改为类似数组的数组:

name: "some"
files: [
  {

    key: 'some/folder/structure/file.jpg',
    name: 'file.jpg',
    folder: 'folder',
    subfolder: 'structure'

  }
]

键是我需要从s3检索对象的键。name是用于前端显示的文件名。该文件夹最终成为我要在其中显示文件的顶级文件夹。子文件夹是介于文件夹和文件名之间的任何内容。

此处理将为s3(示例中为'some')中的每个实际顶级文件夹创建一个对象。该对象将具有一个名称,以及一个类似于上述对象的文件对象列表。

这是我的职责:

function processResponse(res) {
  var result = [];
  res.forEach(item =>{
    if(item.Key.slice(-1) === '/') return;
    const split = item.Key.split('/');
    var obj = {
      key: item.Key,
      name: split[split.length-1],
      folder: split[1],
      subfolder: split.length <= 3 ? '' : split.join([2,split.length-2])
    }
    var index = result.findIndex(x => x.name === split[1])
    if(index === -1) {
      result = [...result, {
        name: split[1],
        files: []
      }]
      index = result.length-1
    }
    result[index].files = [...result[index].files, obj];
  });
  console.log(result)
  return result;
}

我看到的问题与任何单个文件夹的文件数组有关。当我用控制台记录生成的数组时,返回的不是这样,而是显示每个文件的数据:

[
  {
    name: 'Forms',
    files: [
      [Object], [Object],
      [Object], [Object],
      [Object], [Object],
      [Object], [Object],
      [Object], [Object],
      [Object], [Object]
    ]
  }
]

除了数据丢失之外,它似乎也打破了返回前端的局面。如何将实际数据推送到每个文件数组中,以便可以进行console.log-ed并正确返回?]

奖金:我认为我制作子文件夹字符串的方法是错误的。基本上我想要从split [2]到文件之前的最后一个文件夹的任何内容,如果分离的长度只有3,则需要''”。

谢谢您的帮助!

回答如下:

事实证明,这很好,我的问题是不了解控制台如何掩盖结构化的深层数据。要查看全部数据,我需要做的是:

console.log(JSON.stringify(result,0,2))

更多推荐

创建数组并将对象推入数组后,对象是[Object],而不是实际数据

本文发布于:2024-05-07 15:11:32,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1756857.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数组   并将   而不是   对象   数据

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!