在Javascript中合并两个对象
我有两个JSON,我想在Javascript中添加两个JSON(将JSOB对象加入JSON A) JSON A:-在Javascript中合并两个对象,javascript,Javascript,我有两个JSON,我想在Javascript中添加两个JSON(将JSOB对象加入JSON A) JSON A:- { "data": [{ "id": 1, "subgroup": "1", "power": "2", "grp": "1" }, { "id": 1, "subgroup": "1", "power": "1", "grp": "1"
{
"data": [{
"id": 1,
"subgroup": "1",
"power": "2",
"grp": "1"
}, {
"id": 1,
"subgroup": "1",
"power": "1",
"grp": "1"
}, {
"id": 2,
"subgroup": "1",
"power": "1",
"grp": "2"
}, {
"id": 3,
"subgroup": "2",
"power": "1",
"grp": "2"
}, {
"id": 4,
"subgroup": "1",
"power": "1",
"grp": "3"
}, {
"id": 5,
"subgroup": "2",
"power": "1",
"grp": "2"
}, {
"id": 6,
"subgroup": "2",
"power": "1",
"grp": "1"
}, {
"id": 7,
"subgroup": "1",
"power": "1",
"grp": "4"
}, {
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "4"
}
}
JSON B:-
{
"data": [{
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "4"
}, {
"id": 1,
"subgroup": "4",
"power": "1",
"grp": "3"
}
}
JSON A和JSON B中的键名称相似。我们可以看到,subgroup3
和subgroup4
分别出现在GRP4
和GRP3
中(查看JSON B)。我想将JSON B中的每个子组
添加到JSON A中的每个grp
(除了那些grp
s子组s已经存在的s。就像JSON A中有一个带有subgroup3
和grp4
的条目,我们将跳过)。Id
,power
的值将分别相似。因此,我们希望在grp 1,2,3中添加子组3
,并在组1,2,4中添加子组4
。对于子组3
,power
和id
值分别为2,1
,对于子组4
,power
和id
值分别为1,1
输出的最终JSON应该是
{
"data": [{
"id": 1,
"subgroup": "1",
"power": "2",
"grp": "1"
}, {
"id": 1,
"subgroup": "1",
"power": "1",
"grp": "1"
}, {
"id": 2,
"subgroup": "1",
"power": "1",
"grp": "2"
}, {
"id": 3,
"subgroup": "2",
"power": "1",
"grp": "2"
}, {
"id": 4,
"subgroup": "1",
"power": "1",
"grp": "3"
}, {
"id": 5,
"subgroup": "2",
"power": "1",
"grp": "2"
}, {
"id": 6,
"subgroup": "2",
"power": "1",
"grp": "1"
}, {
"id": 7,
"subgroup": "1",
"power": "1",
"grp": "4"
}, {
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "4"
}, {
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "1"
}, {
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "2"
}, {
"id": 1,
"subgroup": "3",
"power": "2",
"grp": "3"
}, {
"id": 1,
"subgroup": "4",
"power": "1",
"grp": "1"
}, {
"id": 1,
"subgroup": "4",
"power": "1",
"grp": "2"
}, {
"id": 1,
"subgroup": "4",
"power": "1",
"grp": "4"
}
}
我可以将对象添加到JSON中
var myObj = {
"id" : id,
"subgroup" : subgroup,
"power" : power,
"grp" : grp
}
从JSON B加入JSON A并跳过子组
已存在于grp
JSON中的条目的推荐方法是什么
可以像这样合并对象
ECMAScript 2015(ES6)标准方法
/* For the case in question, you would do: */
Object.assign(obj1, obj2);
/** There's no limit to the number of objects you can merge.
* All objects get merged into the first object.
* Only the object in the first argument is mutated and returned.
* Later properties overwrite earlier properties with the same name. */
const allRules = Object.assign({}, obj1, obj2, obj3, etc);
有关详细说明,请参见
访问-StackOverflow不是免费的编码服务。所以我希望你能。请更新您的问题,以显示您已在某个应用程序中尝试过的内容。有关更多信息,请参阅,并记下:)您所说的“添加”是什么意思?加入两个名单?计数还是乘法?这似乎更像是合并而不是相加。你的问题很难理解。写清楚并纠正拼写错误。