假设我们有对象a
a = {
prop1:"something",
schema:{
array:[array of object]
}
}
而b是
b = {
array:[array of object]
}
并且在对象数组中,它们具有相同的具有不同值的对象。我想使用object.assign从b更新a.schema创建一个新对象。
所以我写了类似Object.assign({},a.schema,b)
的内容,它返回给我
{
schema:
{
array:[array of object]
}
}
。但我不想创建a的副本,然后将此模式复制到新创建的副本中。
我想要这个
newObject = {
prop1:"something",
schema:{
array:[array of object from b]
}
}
我想创建一个看起来就像在一个Object.assign中的新对象,这可能吗?
答案 0 :(得分:0)
这是你可以做的一个例子:
x = {a:1,b:[1,2,3}}
y = {c:[4,5,6]}
z=Object.assign({},{prop1:x.a},{shcema:y.c})
答案 1 :(得分:0)
如果可以使用spread syntax,您可以这样做:
const a = {
prop1: 'something',
schema: {
array: [
{
aprop: 'prop',
},
],
},
};
const b = {
array: [
{
bprop: 'test',
},
{
bprop: 'test2',
},
],
};
const updated = {
...a,
schema: b,
};
console.log(updated);