let obj1 = {a: [1, 2]};
let obj2 = {a: [1, 2]};
Object.assign({}, obj1, obj2);
生成的对象将是:
{a: [1, 2]}
。但是,数组[1, 2]
会引用obj1的内存还是obj2的内存中的数组? 最佳答案
您可以先阅读Object.assign()
:Merging objects with same properties的文档。
然后,您可以使用strict equals进行验证:
let obj1 = {a: [1, 2]};
let obj2 = {a: [1, 2]};
let merge = Object.assign({}, obj1, obj2);
obj1.a === merge.a; // false
obj2.a === merge.a; // true
关于javascript - 如果我将两个相同的对象浅层合并,则使用哪个对象的引用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53715888/