2017-04-21 4 views
1

私はこのようなデータ構造を持っていると仮定します。オブジェクトのセットを1つのオブジェクトに結合しますか?

const list = [ 
    {"hello": "world"}, 
    {"goodbye": "cruel world"} 
] 

を、私はにそれに参加したい:私はそうのような半エレガントにそれを行うことができます

{"hello": "world", 
"goodbye": "cruel world"} 

const union = l.reduce((acc, o) => { 
    Object.keys(o).forEach((k) => acc[k] = o[k]); 
    return acc; 
}, {}) 

しかし、おそらくJS標準ライブラリに組み込まれているよりエレガントな方法がありますか?

+0

ていますが、これはコードレビューに適しだろうようにそれはそう「エレガント」欲しいです。 – csmckelvey

答えて

3

Object.assign()とES6の普及構文でこれを行うことができます。コード動作するので

const list = [ 
 
    {"hello": "world"}, 
 
    {"goodbye": "cruel world"} 
 
] 
 

 
var obj = Object.assign({}, ...list); 
 
console.log(obj)

関連する問題