在 JavaScript 中合并两个对象并忽略未定义的值
javascriptweb developmentfront end technologyobject oriented programming更新于 2026/1/2 2:20:17
假设我们有两个对象,比如 A 和 B,如下所示 −
const A = { activity: 'purchased', count: undefined, time: '09:05:33' };
const B = { activity: 'purchased', count: '51', time: undefined };
我们需要编写一个 JavaScript 函数来合并这两个对象,同时记住,如果任何键具有真值,则不应被具有假值的键覆盖。
如果我们仅通过使用扩展运算符来执行此操作,它将不会跟踪真值或假值。
因此,我们必须使用迭代方法来执行此操作。
示例
以下是代码 −
const A = { activity: 'purchased', count: undefined, time: '09:05:33' };
const B = { activity: 'purchased', count: '51', time: undefined };
const mergeObject = (A, B) => {
let res = {};
Object.keys({...A,...B}).map(key => {
res[key] = B[key] || A[key];
});
return res;
};
console.log(mergeObject(A, B));
输出
这将在控制台上产生以下输出 −
{ activity: 'purchased', count: '51', time: '09:05:33' }
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

