Convert object array to hash map, indexed by an attribute value of the Object

前端 未结 16 2552
忘掉有多难
忘掉有多难 2020-11-28 01:08

Use Case

The use case is to convert an array of objects into a hash map based on string or function provided to evaluate and use as the key in the hash map and val

16条回答
  •  夕颜
    夕颜 (楼主)
    2020-11-28 01:32

    Using ES6 spread + Object.assign:

    array = [{key: 'a', value: 'b', redundant: 'aaa'}, {key: 'x', value: 'y', redundant: 'zzz'}]
    
    const hash = Object.assign({}, ...array.map(s => ({[s.key]: s.value})));
    
    console.log(hash) // {a: b, x: y}
    

提交回复
热议问题