node.js - Json对象数组:replacing 'key' names with their values to avoid same key name and easy retrieval

标签 node.js json arrayobject

我有一个像这样的 json 对象数组:

[
    {
        "entity": "clientModal",
        "value": "MacBook"
    },
    {
        "entity": "siteName",
        "value": "abde"
    },
    {
        "entity": "clientModal",
        "value": "MacBook"
    },
    {
        "entity": "siteName",
        "value": "abcd"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "timePeriod",
        "value": "week"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "timePeriod",
        "value": "week"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "clientName",
        "value": "ppphone"
    },
    {
        "entity": "clientName",
        "value": "pppiphone"
    }
]

我希望键“实体”在任何地方都应该被它的值替换,并且键“值”必须位于其中。 像这样:

[ { “客户名称”: { “值(value)”:“ppiphone” } } ]

我尝试了一切,但仍然没有找到任何东西。

最佳答案

您需要映射数组并创建一个新对象,其中实体值将用作键的名称。

const arrays = [
    {
        "entity": "clientModal",
        "value": "MacBook"
    },
    {
        "entity": "siteName",
        "value": "abde"
    },
    {
        "entity": "clientModal",
        "value": "MacBook"
    },
    {
        "entity": "siteName",
        "value": "abcd"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "timePeriod",
        "value": "week"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "timePeriod",
        "value": "week"
    },
    {
        "entity": "clientName",
        "value": "ghe-1202m"
    },
    {
        "entity": "clientName",
        "value": "ppphone"
    },
    {
        "entity": "clientName",
        "value": "pppiphone"
    }
];

const mappedArray = arrays.map(arr => ({
   [arr.entity]: {
     value: arr.value
   }
}));

console.log(mappedArray);

关于node.js - Json对象数组:replacing 'key' names with their values to avoid same key name and easy retrieval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60519830/

相关文章:

java - 无法打印整个数组

javascript - 在本地运行的 Meteor.js 应用抛出 TypeError : Cannot read property 'appId' of undefined

javascript - 如何检查我的 json 数组是否缺少对象

java - 如何在 Jersey 客户端 HTTP POST 请求中发布原始 json 文本?

javascript - 如何在 JavaScript 中将 JSON 对象转换为字符串和数字数组

php - 使用ArrayObject存储数组

Javascript 数组对象属性未定义

javascript - 将图片从 Google Cloud Function 上传到 Cloud Storage

javascript - Node js - 在解决所有 promise 后发送响应

javascript - 刷新时获取json数据