【发布时间】:2021-03-31 13:45:24
【问题描述】:
如何将对象数组中的键值分配给另一个数组对象
我想将 key:value 对分配给另一个对象数组中的现有对象数组。
我已经检查了这个thread,但在我的情况下它不起作用。
我已经尝试过类似的方法,但没有返回我正在寻找的所需输出。
const DataA = {
"id": 57,
"status": true,
"options": [{ "id": 1, "name": "Type A" },
{ "id": 2, "name": "Type B" },
{ "id": 3, "name": "Type C" }]
}
const DataB = {
"id": 57,
"status": true,
"options": [{ "id": 1, "value": 10 },
{ "id": 2, "value": 20 },
{ "id": 3, "value": 30 }]
}
let result;
var A1 = DataA.options.map((v) => {
console.log(v);
result = v;
})
var A2 = DataB.options.map(v => {
result.options = v;
console.log("result",result);
})
let arr3 = DataA.options.map((item, i) => Object.assign({}, item, DataB[i]));
console.log(arr3);
我需要的结果如下:
const DataA = {
"id": 57,
"status": true,
"options": [{ "id": 1, "name": "Type A", "value": 10 },
{ "id": 2, "name": "Type B", "value": 20 },
{ "id": 3, "name": "Type C", "value": 30 }]
}
我需要合并与这个thread略有不同的数组的深层克隆。
【问题讨论】:
-
这能回答你的问题吗? Merge two array of objects based on a key
-
不,因为我想对数组进行深度合并。
标签: javascript arrays deep-copy arrayobject