lodash:如何使用值来压缩对象数组 [英] lodash: how to zip an array of objects with values

查看:123
本文介绍了lodash:如何使用值来压缩对象数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找如何使用lodash来压缩包含每个值的新键值的对象数组。尝试使用 zip zipObject 地图,但我找不到密钥。

I'm looking how to zip an array of objects with values including a new key for each value using lodash. Tried with zip, zipObject and map but I don't find the key.

我想做的是以下(避免在数组上手动迭代)

What I want to do is the following (avoiding to iterate manually over the arrays)

var array = [
   {a: 3, b: 42}, 
   {c: 4}, 
   {d: 12}
 ]
 var values = ['this', 'are', 'new', 'values']
 var goal = [
   {a: 3, b: 42, v: 'this'}, 
   {c: 4, v: 'are'},
   {d: 12, v:'new'}
 ]


推荐答案

您可以使用 zipWith( )提供一个自定义迭代:

You can use zipWith() to provide a custom iteratee:

var newArray = _.zipWith(array, values, function(item, value) {
    return _.defaults({ v: value }, item);
});

请注意,这种方法不会将原始 array

这篇关于lodash:如何使用值来压缩对象数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆