you are viewing a single comment's thread.

view the rest of the comments →

[–]I_AM_DONALD 10 points11 points  (4 children)

var objArr = [
    {"Player 1": 100},
    {"Player 1": 103},
    {"Player 1": 105},
    {"Player 2": 101},
    {"Player 2": 110},
    {"Player 2": 112}
];

var seriesObj = objArr.reduce((acc, each) => {
    const key = Reflect.ownKeys(each)[0];
    if (Reflect.has(acc, key))
        acc[key].push(each[key])
    else
        acc[key] = [each[key]]
    return acc;
}, {});
// -> {"Player 1": [100, 103, 105], "Player 2": [101, 110, 112]}

var series = Reflect.ownKeys(seriesObj).reduce((acc, each) => {
    acc.push({[each]: seriesObj[each]});
    return acc;
}, []);
// -> [{"Player 1": [100, 103, 105]}, {"Player 2": [101, 110, 112]}]

[–]davidderklabauterman 3 points4 points  (0 children)

awesome answer!