Я хотел бы объединить два похожих, но не идентичных объекта и переопределить нулевые значения в одном из них, если таковые существуют. Например, у меня есть эти два объекта:
const obj1 = {
a: 1,
b: '',
c: [],
d: null
}
const obj2 = {
a: 2,
b: null,
d: 1
}
И эффект слияния должен быть:
const objMerged = {
a: 2,
b: '',
c: [],
d: 1
}
Другими словами, наиболее важным источником данных в объединенном объекте является obj2
, но ему не хватает некоторых свойств из obj1
, поэтому их необходимо скопировать, а также некоторые из значений obj2
равны null
поэтому они должны быть взяты из obj1
.
EDIT
Я попробовал:
_.extend({}, obj1, obj2)
и
Object.assign({}, obj1, obj2)