【问题标题】:JavaScript Convert Array Of Objects to Arrays For only Specific Key [duplicate]JavaScript将对象数组转换为仅针对特定键的数组[重复]
【发布时间】:2021-07-10 06:06:45
【问题描述】:

我有一个对象数组

{
    "tags": [{
            "id": "1",
            "data": [{
                    "bs": 1617779042313,
                    "bstp": 1617779099999,
                    "maxA": 1617779050311,
                    "maxV": 10,
                    "minA": 1617779050310,
                    "minV": 10,
                    "q": 3
                },
                {
                    "bs": 1617779100000,
                    "bstp": 1617779519999,
                    "maxA": 1617779100236,
                    "maxV": 10,
                    "minA": 1617779100231,
                    "minV": 10,
                    "q": 2
                }
            ]
        },
        {
            "id": "2",
            "data": [{
                    "bs": 1617779042313,
                    "bstp": 1617779099999,
                    "maxA": 1617779050311,
                    "maxV": 10,
                    "minA": 1617779050310,
                    "minV": 10,
                    "q": 3
                },
                {
                    "bs": 1617779100000,
                    "bstp": 1617779519999,
                    "maxA": 1617779100236,
                    "maxV": 10,
                    "minA": 1617779100231,
                    "minV": 10,
                    "q": 2
                }
            ]
        }

    ]
}

输出

{
    "tags": [{
            "id": "1",
            "data": [
                [1617779050311, 10, 3],
                [1617779100236, 10, 2]
            ]
        },
        {
            "id": "2",
            "data": [
                [1617779050311, 10, 3],
                [1617779100236, 10, 2]
            ]
        }

    ]
}

我想把这个对象数组格式化成数组数组

对于“数据”键,我需要获取特定键的值并插入到数组中

特定键 - [MaxA, maxV, q]

我该怎么做?任何小的帮助表示赞赏..:)

efewfewfewfewfwefwefewfewfwefewfkfopkr3po2i50493543iropjgoprevm

【问题讨论】:

  • 您的尝试有什么问题?特定键是动态确定的,还是固定的?
  • 欢迎来到 Stack Overflow!请使用tour(您将获得徽章!)并通读help center,尤其是How do I ask a good question? 您最好的选择是进行研究,search 以获取有关 SO 的相关主题,然后试一试. 如果您在进行更多研究和搜索后遇到困难并且无法摆脱困境,请发布您的尝试minimal reproducible example,并具体说明您遇到的问题。人们会很乐意提供帮助。
  • 你需要 Array#map 和 Object.keys。谷歌他们的文档,尝试自己解决这个问题并将其放在问题中。

标签: javascript arrays angular typescript javascript-objects


【解决方案1】:

您可以使用map。见下面的代码sn-p:

const data = [
  {
    bs: 1617779042313,
    bstp: 1617779099999,
    maxA: 1617779050311,
    maxV: 10,
    minA: 1617779050310,
    minV: 10,
    q: 3,
  },
  {
    bs: 1617779100000,
    bstp: 1617779519999,
    maxA: 1617779100236,
    maxV: 10,
    minA: 1617779100231,
    minV: 10,
    q: 2,
  },
];

const keys = ["maxA", "maxV", "q"];

console.log(data.map((d) => keys.map((k) => d[k])));

【讨论】:

  • 嗨,Som,我想编辑有问题的输入的输出,任何小的帮助表示赞赏.. :)
  • @MitulPanchal 如果您在完成更改输入和输出后提出一个单独的问题会更好,您可以分享该问题的链接,我很乐意提供帮助!
猜你喜欢
  • 1970-01-01
  • 2019-07-14
  • 1970-01-01
  • 2022-01-09
  • 2020-02-06
  • 2018-03-18
  • 2015-04-21
  • 1970-01-01
相关资源
最近更新 更多