gpt4 book ai didi

javascript - 反向填充对象

转载 作者:行者123 更新时间:2023-11-28 03:06:46 25 4
gpt4 key购买 nike

所以我正在尝试构建重建对象并以受人尊敬的方式返回的函数,例如:

当前对象:

{
"child1": {
"value": "firstvalue", "Key": "ID1"
},
"child2":
{
"value": "secondvalue", "Key": "ID2"
},
"child3":
{
"value": "thirdvalue", "Key": "ID1"
},
}

预期对象:

{
"ID1": {
"child1": "first value",
"child3": "third value",
},
"ID2": {
"child2": "third value",
},
}

有什么干净的方法可以做到吗?或者我必须将它插入数组?我尝试将其插入数组,然后组织它,但每当我尝试插入具有相同“ID1”的对象时,它都会替换它,尝试使用reduce和concat到数组中,但仍然没有弄清楚,谢谢您的帮助!

最佳答案

是的,这很有可能:

const obj = {
"child1": {
"value": "firstvalue", "Key": "ID1"
},
"child2":
{
"value": "secondvalue", "Key": "ID2"
},
"child3":
{
"value": "thirdvalue", "Key": "ID1"
},
};

const result = Object.entries(obj) // Get all key/value pairs in the source object.
.reduce((result, [child, data]) => {
result[data.Key] = result[data.Key] || {}; // Make sure result[data.Key] is an object.
result[data.Key][child] = data.value; // Assign the current entry's value to object.
return result;
}, {});

console.log(result)

关于javascript - 反向填充对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60545093/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com