如何合并两个JavaScript对象的属性,而不喜欢不使用null值?

rap-2-h

这是两个对象:

const obj1 = {a: null, b: "b"} 
const obj2 = {a: "a", b: null}

如何合并两个对象并获得以下对象?

{a: "a", b: "b"}

我可以做这个:

const merged = {...obj1, ...obj2}

但它返回以下内容:

{ a: "a", b: null }

有没有一种方法可以合并两个对象,同时优先选择不为null(也不为空,未定义等)的值?

布鲁诺·布拉加(Bruno Braga)
function merge(obj1, obj2) {
  answer = {}
  for(key in obj1) {
    if(answer[key] === undefined || answer[key] === null)
      answer[key] = obj1[key];
  }
  for(key in obj2) {
    if(answer[key] === undefined || answer[key] === null)
      answer[key] = obj2[key];
  }
  return answer
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章