有没有在js中将单个对象拆分成多个对象的黑魔法

目前有这么一个对象如下:

clipboard.png

现需要将这个对象拆分成下面这样:

clipboard.png

请问有什么骚操作黑魔法吗?

目前我拆出来的结果是这样的:

clipboard.png

阅读 9.5k
2 个回答

没有黑魔法,也没有骚操作,踏踏实实遍历属性里的b,生成新的对象就好了

没啥黑魔法,但是用es6实现起来并不麻烦

const arr = {
  opinionVO: [
    {a: '', b: '1,2,3', c: 10047},
    {a: '', b: '4,5,6', c: 10047},
  ],
};

const result = {
  ...arr,
  opinionVO: arr.opinionVO.reduce((res, item) => res.concat(...item.b.split(',').map(b => ({...item, b}))), []),
};

console.log(result)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题