2017-04-16 61 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 }; }));