gpt4 book ai didi

javascript - 在 JavaScript 中如何将两个对象合并到同一个属性中?

转载 作者:行者123 更新时间:2023-12-01 15:55:25 25 4
gpt4 key购买 nike

我有 2 个单独的 JS 对象需要合并到同一个属性中。

当前的对象是这样的:

对象 1:

[0:{"acircuit":"ABCDEFGH","astatus":"Test"}, 1:{"acircuit":"IJKLMNOP","astatus":"Test2"}]

对象 2:

[0:{"bcircuit":"ABCDEFGH","bstatus":"Test3"}, 1:{"bcircuit":"IJKLMNOP","bstatus":"Test4"}]

我需要将这些结果合并为一个,如下所示:

[
0:{"acircuit":"ABCDEFGH","astatus":"Test","bcircuit":"ABCDEFGH","bstatus":"Test3"},
1:{"acircuit":"IJKLMNOP","astatus":"Test2","bcircuit":"IJKLMNOP","bstatus":"Test4"}
]

当前代码如下所示:

allResults = {this.state.aCircuitResults.concat(this.state.bCircuitResults)}

但是,结果是这样的:

[
0:{"acircuit":"ABCDEFGH","astatus":"Test"},
1:{"acircuit":"IJKLMNOP","astatus":"Test2"}
2:{"bcircuit":"ABCDEFGH","bstatus":"Test3"},
3:{"bcircuit":"IJKLMNOP","bstatus":"Test4"}
]

提前致谢。

最佳答案

你可以使用 mapObject.assign ,假设您想通过它们在数组中的位置组合它们:

const result = firstArray.map((firstObject, index) => Object.assign({}, firstObject, secondArray[index]));

例子:

const firstArray = [{"acircuit":"ABCDEFGH","astatus":"Test"},{"acircuit":"IJKLMNOP","astatus":"Test2"}];

const secondArray = [{"bcircuit":"ABCDEFGH","bstatus":"Test3"},{"bcircuit":"IJKLMNOP","bstatus":"Test4"}];

const result = firstArray.map((firstObject, index) => Object.assign({}, firstObject, secondArray[index]));

console.log(result);

如果您需要通过属性(例如,acircuitbcircuit)将它们关联起来,请从其中一个键控的Map 构建一个 Map属性,然后您可以在 map 操作中使用查找:

const second = new Map(secondArray.map(obj => [obj.bcircuit, obj]));
const result = firstArray.map(firstObject => Object.assign({}, firstObject, second.get(firstObject.acircuit)));

例子:

const firstArray = [{"acircuit":"ABCDEFGH","astatus":"Test"},{"acircuit":"IJKLMNOP","astatus":"Test2"}];

const secondArray = [{"bcircuit":"ABCDEFGH","bstatus":"Test3"},{"bcircuit":"IJKLMNOP","bstatus":"Test4"}];

const second = new Map(secondArray.map(obj => [obj.bcircuit, obj]));
const result = firstArray.map(firstObject => Object.assign({}, firstObject, second.get(firstObject.acircuit)));

console.log(result);

关于javascript - 在 JavaScript 中如何将两个对象合并到同一个属性中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63112623/

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