我想使用lodash更新我的对象(但只有自己的属性)。我正在阅读文档,但找不到太多(或者只是我没有得到它)。有什么想法吗?
let x = { name: 'John', last: 'Doe' };
let y = { age: 23 };
let z = { last: 'Smith', age: 25 };
_.something(x, y); // should be { name: 'John', last: 'Doe' };
_.something(x, z); // should be { name: 'John', last: 'Smith' };
答案 0 :(得分:0)
使用_.keys()
获取原始对象键的数组,并将该数组用于第二个对象的_.pick()
属性。 _.assign()
已挑选的对象属性,或新对象{}
,如果您不想改变原始对象。
let x = { name: 'John', last: 'Doe' };
let y = { age: 23 };
let z = { last: 'Smith', age: 25 };
console.log(_.assign({}, x, _.pick(y, _.keys(x))));
console.log(_.assign({}, x, _.pick(z, _.keys(x))));

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.3/lodash.min.js"></script>
&#13;