优化 - 与许多参数的 lodash 合并的兼容性



values视为不确定的对象列表。

我想要一个有效的ES5版本:

var result = _.merge({}, ...values); // <-- This is what I want

由于不允许...anything,我做了这个:

var result _.reduce(response, function(result, value) {
  return _.merge(result, value);
}, {});

但我很确定这不是最好的方法......

有什么想法吗?

您可以在值数组上使用 use Function#apply。如果您不想改变原始对象,则需要Array#concat一个空对象:

_.merge.apply(_, [{}].concat(arr));

例:

var arr = [{ a: 1 }, { b: 2 }, { c: 3 }];
var result = _.merge.apply(_, [{}].concat(arr));
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.4/lodash.min.js"></script>

相关内容

  • 没有找到相关文章

最新更新