2017-04-16 56 views
1

有人可以帮助我产生对象从现有使用lodash一个新的阵列生成现有对象的数组对象的新数组?我一直在努力的_.zipObject and map的组合,但无济于事...基本上,我有一个对象的数组:如何使用lodash

const names = [ 
    { 
    first_name: 'nedd', 
    given_name: 'cersei' 
    }, 
    { 
    first_name: 'tyrion', 
    given_name: 'tywin' 
    } 
] 

不过,我希望它看起来像:

[ 
    { 
    name: 'nedd' 
    }, 
    { 
    name: 'cersei' 
    }, 
    { 
    name: 'tyrion' 
    }, 
    { 
    name: 'tywin' 
    }, 
] 

我已经试过的各种迭代:

const newArray = _.zipObject(names, _.fill(Array(names.length), {name: ['first_name' || 'given_name']}));

,但没有任何运气...有人可以帮忙吗?

提前致谢!

回答

2

这可能会实现:

_.flatMap(names, (n)=> [{name: n.first_name}, {name: n.given_name}]); 
2

使用与_.map联合:

_.flatMap(names, (nameObj) => _.map(nameObj, (objVal) => { return { name: objVal }; }));