Flatten array with objects into 1 object

前端 未结 8 1509
情歌与酒
情歌与酒 2020-12-03 09:41

Given input:

[{ a: 1 }, { b: 2 }, { c: 3 }]

How to return:

{ a: 1, b: 2, c: 3 }

For arrays it\'s not a pr

8条回答
  •  生来不讨喜
    2020-12-03 10:34

    Here is a version not using ES6 methods...

    var arr = [{ a: 1 }, { b: 2 }, { c: 3 }];
    var obj = {};
    
    for(var i = 0; i < arr.length; i++) {
        var o = arr[i];
        for(var key in o) {
            if(typeof o[key] != 'function'){
                obj[key] = o[key];
            }
        }
    }
    
    console.log(obj);
    

    fiddle: http://jsfiddle.net/yaw3wbb8/

提交回复
热议问题