我必须合并两个对象,但我不想将未定义的值分配给已定义的值。
A = { activity: 'purchased', count: undefined, time: '09:05:33' }
B = { activity: 'purchased', count: '51', time: undefined }
当我尝试 Object.assign 时,未定义正在替换具有值的字段。我想要的是
C = { activity: 'purchased', count: '51', time: '09:05:33' }
最佳答案
展开运算符(...) 可以很好地合并对象,并且有一个简单的解决方案可以使用 删除 undefined JSON.stringify() 和 JSON.parse() .请参见下面的示例:
const A = { activity: 'purchased', count: undefined, time: '09:05:33' };
const B = { activity: 'purchased', count: '51', time: undefined };
//If you don't care about date objects then only use below method
const C = {...JSON.parse(JSON.stringify(A)), ...JSON.parse(JSON.stringify(B))};
console.log(C);
关于javascript - 在javascript中合并两个对象,忽略未定义的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62837977/