合并Javascript对象

合并Javascript对象,javascript,hash,merge,concatenation,javascript-objects,Javascript,Hash,Merge,Concatenation,Javascript Objects,我有一个未知的键名和object1,我需要与其他object2合并。 安全的一点是,object2中不存在未知密钥,因此,永远不会出现密钥名称冲突 var object1 = { id: 1, name: "myname", boleanSample : true } var object2 = { unknownKeyName : "UnknownValue" } 我想将object2合并到object1中并得到这个 var object1 = { id: 1, name:

我有一个未知的键名和object1,我需要与其他object2合并。 安全的一点是,object2中不存在未知密钥,因此,永远不会出现密钥名称冲突

var object1 = {
 id: 1,
 name: "myname",
 boleanSample : true
}


var object2 = {
 unknownKeyName : "UnknownValue"
}
我想将object2合并到object1中并得到这个

var object1 = {
 id: 1,
 name: "myname",
 boleanSample : true,
 unknownKeyName = "UnknownValue"
}
请,只吃香草的。 如果响应需要创建新的object3,则完全可以:)

PD:我在发布问题之前检查了这些链接:

  • (使用数组…)
  • (仅适用于已知密钥,不适用于此情况)
  • (坏帖子,没有意义)
对于以下各项,完全没有重复:)

使用
Object.keys
Array#forEach

var object1={
id:1,
姓名:“我的名字”,
伯林:是的,
};
var object2={
unknownKeyName:“UnknownValue”//请更正此处的输入错误
};
Object.keys(object2.forEach)函数(key){
object1[key]=object2[key];
});

console.log(object1)此合并函数应完成此操作。只需记住先添加要附加两个的对象

var object1={
id:1,
姓名:“我的名字”,
Bolean示例:正确
}
var object2={
unknownKeyName:“UnknownValue”
}
函数合并对象(a、b){
用于(b中的变量bi){
如果(b.hasOwnProperty(bi)){
if(a[bi]=“未定义”的类型){
a[bi]=b[bi];
}
}
}
}
合并对象(对象1、对象2);
console.log(object1)
第一步:在属性上循环

第二步:尝试并检查对象

第三步:如果为真,刺激obj[prop]上的功能并检查,否则 检查一下

第四步:如果有错误obj[prop]=检查

第五步:返回obj

/*函数*/
函数objectConcat(o1,o2){
用于(o2中的v值){
试一试{
o1[v]=(o2[v]。构造函数==对象)?objectConcat(o1[v],o2[v]):o2[v];
}捕获(e){
o1[v]=o2[v];
}
}
返回o1;
}
/*物体*/
var object1={
id:1,
姓名:“我的名字”,
伯林:是的,
}
var object2={
unknownKeyName:“UnknownValue”/*错误更正*/
}
/*代码*/

log(objectConcat(object2,object1))
用于(object2中的变量k)object1[k]=object2[k]
..?是什么让你认为来自的
mergeObjectInto
函数只对已知的键起作用?好的,伙计们,非常感谢你们,但我现在能做什么?Niet the Dark Absol评论是一个有效的解决方案,但@gurvinder372和Rayon也发布了一个有效的解决方案。也许两种方式都有更新?有人知道哪一个更好/更快/性能优势:)?@HéctorLeón,Gurvinder是所有人中速度最快的。。继续他的帖子:)谢谢你的快速回复,但我尝试了,但没有成功