Thử sử dụng _.extend
hoặc _.assign
thay vào đó:
var updated = _.assign(entry, req.body);
câu trả lời này bởi ShitalShah nêu bật sự khác biệt giữa hợp nhất và mở rộng đang gây ra các bản sao trong đối tượng kết quả của bạn với hợp nhất nhưng về cơ bản:
JSBin để minh họa sự khác biệt:
var dest = {
p: { x: 10, y: 20},
};
var src = {
p: { x: 20, z: 30},
};
console.log(_.merge(dest, src));
/*
[object Object] {
p: [object Object] {
x: 20,
y: 20,
z: 30
}
}
*/
console.log(_.extend(dest, src));
/*
[object Object] {
p: [object Object] {
x: 20,
z: 30
}
}
*/