Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何比较对象数组中的键并使用javascript修改它_Javascript_Jquery_Arrays_Object - Fatal编程技术网

如何比较对象数组中的键并使用javascript修改它

如何比较对象数组中的键并使用javascript修改它,javascript,jquery,arrays,object,Javascript,Jquery,Arrays,Object,我有两个对象obj1和obj2,如何循环遍历数组键子对象,如果代码名匹配,则在对象obj2中添加名称键,获取对象 如何循环对象的对象,匹配键并按下键以获得javascript中的新对象 函数新建对象(obj1、obj2){ var result=obj1.map(e=>{ if(e中的“children”) e、 children=e.children.map(child=>{ if(child中的children) child.children=child.children.map(c=>{

我有两个对象obj1和obj2,如何循环遍历数组键
子对象
,如果代码名匹配,则在对象obj2中添加名称键,获取对象

如何循环对象的对象,匹配键并按下键以获得javascript中的新对象

函数新建对象(obj1、obj2){
var result=obj1.map(e=>{
if(e中的“children”)
e、 children=e.children.map(child=>{
if(child中的children)
child.children=child.children.map(c=>{
姓名:c.name
});
返回儿童;
});
返回e;
})
返回结果
}
变量obj1=[{
“id”:1,
“项目”:“节点1”,
“儿童”:[{
“id”:2,
“代码”:“国家”,
“标题”:“国家”,
“儿童”:[{
“cid”:12,
“代码”:“S1”,
“名称”:“SG”,
“儿童”:[{
“id”:4,
“代码”:“C1”,
“名称”:“城市”
}]
},
{
“cid”:13,
“代码”:“S2”,
“名称”:“TH”
}
]
},
{
“id”:2,
“代码”:“杂货店”,
“标题”:“杂货店”,
“儿童”:[{
“cid”:11,
“代码”:“G1”,
“名称”:“水果”
},
{
“cid”:10,
“代码”:“G2”,
“名称”:“蔬菜”
}
]
}, {
“id”:3,
“代码”:“列表”,
“标题”:“选项”
}
]
}];
变量obj2=[{
id:1,
代码:“G1”,
状态:“活动”
},
{
id:2,
代码:“S2”,
状态:“非活动”
},
{
id:3,
代码:“C1”,
状态:“活动”
}
];
console.log(this.newObject(obj1,obj2))您可以检查此项

我修复了您的对象,您可以在控制台中找到您的期望值

我为您制作了一个片段并修复了您的对象。@mplungjan谢谢您的回复,但我的预期输出不同,我没有修复您的问题,只修复了无效的OBJECTcheck链接,不鼓励回答。一个好的答案是独立的,不仅仅是代码,它还解释了它是如何解决问题的!!我认为他需要帮助,而不是一个无话可说的故事:)