将对象修改为新对象

时间:2014-10-23 21:45:29

标签: javascript angularjs underscore.js

你是如何离开这个......

{
    23 : [ { cid: 88 }, { cid: 34}, { cid: 45} ],
    72 : [ { cid: 444 }, { cid: 29}, { cid: 41} ]
}

..对此..

[
    {
        pid : 23,
        cids : [88, 34, 45];
    },
    {
        pid : 72,
        cids : [444, 29, 41];
    }
]

使用underscore.js?

初始对象中的键值对数量未知。

1 个答案:

答案 0 :(得分:4)

var orig = {
    23 : [ { cid: 88 }, { cid: 34}, { cid: 45} ],
    72 : [ { cid: 444 }, { cid: 29}, { cid: 41} ]
};

var dest = _.map(orig, function(item, pid) {
  return { pid: pid, cids: _.pluck(item, 'cid') };
});