我想合并2个对象.
一个对象是默认表单.
let data = {
weight: '',
DOB: '',
gender: '',
}
Run Code Online (Sandbox Code Playgroud)
另一个是不规则的,如下所示
let temp1 = {
weight: '19.2',
}
let temp2 = {
DOB: '1992-11',
}
let temp3 = {
DOB: '1992-11',
gender: 'Male',
}
let temp4 = undefined;
Run Code Online (Sandbox Code Playgroud)
如果我合并data和temp1,结果应该是
let data = {
weight: '19.2',
DOB: '',
gender: ''
}
Run Code Online (Sandbox Code Playgroud)
如果我合并data和temp3,结果应该是
let data = {
weight: '',
DOB: '1992-11',
gender: 'Male',
}
Run Code Online (Sandbox Code Playgroud)
如果我合并data和temp4,结果应该是
let data = {
weight: '',
DOB: '',
gender: ''
}
Run Code Online (Sandbox Code Playgroud)
给我一些建议来实现它.
提前致谢.
你可以使用Object.assign():
let data = {
weight: '',
DOB: '',
gender: '',
}
let temp3 = {
DOB: '1992-11',
gender: 'Male',
}
data = Object.assign(data, temp3);
Run Code Online (Sandbox Code Playgroud)
或者如果您不希望更改数据对象:
let data2 = Object.assign({}, data, temp3);
Run Code Online (Sandbox Code Playgroud)
也可以使用扩展运算符,它基本上是相同的,只是原始数据对象不会改变:
data = { ...data, ...temp3 };
Run Code Online (Sandbox Code Playgroud)