我想使用
使用我上面概述的组合方式能否实现这一点,还是应该坚持使用类似的方法?
lodash
来有选择地改变对象中的属性。var foo = { 'a': 1, 'b': 2, 'c': 3 };
function addOne(num) {
return num + 1;
}
var propsToTransform = ['a', 'b'];
_(foo).pick(propsToTransfrom)
.map(addOne);
// I want foo = { 'a': 2, 'b':3, 'c':3 }
使用我上面概述的组合方式能否实现这一点,还是应该坚持使用类似的方法?
_.forEach(propsToTransform, (prop) => {
if (foo[prop]) {
foo[prop] = addOne(foo[prop]);
}
});
bar
。它缩短为_.merge(foo, _(foo).pick .... );
,因为merge
将改变foo
。@dmlittle 如果您能将console.log
的输出设置为{ 'a': 2, 'b': 3, 'c': 3 }
,我可以标记为已接受。 - trstephen