Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按计数值在对象数组中复制对象_Javascript_Arrays - Fatal编程技术网

Javascript 按计数值在对象数组中复制对象

Javascript 按计数值在对象数组中复制对象,javascript,arrays,Javascript,Arrays,我正在寻找一种方法来修改对象数组,如下所示: [ { id: 1, name: 'xyz', count: 3, }, { id: 2, name: 'aaa', count: 2, }, { id: 6, name: 'bbb', count: 1, }, ] 现在我想映射它,告诉我如何接收没有计数属性但按其计数值具有重复对象的新对象数组。我们将有: [ { id: 1, na

我正在寻找一种方法来修改对象数组,如下所示:

[
  {
    id: 1,
    name: 'xyz',
    count: 3,
  },
  {
    id: 2,
    name: 'aaa',
    count: 2,
  },
  {
    id: 6,
    name: 'bbb',
    count: 1,
  },
]
现在我想映射它,告诉我如何接收没有计数属性但按其计数值具有重复对象的新对象数组。我们将有:

[
  {
    id: 1,
    name: 'xyz',
  },
  {
    id: 1,
    name: 'xyz',
  },
  {
    id: 1,
    name: 'xyz',
  },
  {
    id: 2,
    name: 'aaa',
  },
  {
    id: 2,
    name: 'aaa',
  },
  {
    id: 6,
    name: 'bbb',
  },
]

我试着用map和reduce来做,但没有按预期效果

可以将嵌套映射与外部映射一起使用

var data=[{id:1,名称:'xyz',计数:3},{id:2,名称:'aaa',计数:2},{id:6,名称:'bbb',计数:1}],
结果=数据.flatMap({count,…o})=>
from({length:count},=>({…o}));

控制台日志(结果)Nina Scholz解决方案很好用,如果您想要更容易阅读的内容:

var数据=[{
id:1,
名称:“xyz”,
计数:3,
},
{
id:2,
名称:“aaa”,
计数:2,
},
{
id:6,
名称:“bbb”,
计数:1,
},
];
var输出=[];
对于(变量i=0;i