Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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,我有这样的对象数组: [{key: 4214, value: 'example'}, ...etc 我有一些模板,我想用它为对象生成一个新数组 {type: 1, blocks: []} //one item in blocks {type: 2, blocks: []} //two items in blocks arr {type: 3, blocks: []} //four items in blocks arr 我需要使用现有阵列中的数据,基于模板创建一个阵列。 在每个模板类型s中,

我有这样的对象数组:

[{key: 4214, value: 'example'}, ...etc
我有一些模板,我想用它为对象生成一个新数组

{type: 1, blocks: []} //one item in blocks
{type: 2, blocks: []} //two items in blocks arr
{type: 3, blocks: []} //four items in blocks arr
我需要使用现有阵列中的数据,基于模板创建一个阵列。 在每个模板
类型
s中,有限数量的指定对象可以装入
对象。当循环从模板创建所有三种类型时,它必须从类型1重新开始。在
类型中:1
一个对象,在
类型中:2
两个对象,在
类型中:3

例如,我想要实现的效果是从这个
[{key:1},{key:2},{key:3}]
对此
[{type:1,块:[{key:1}]},{type:2,块:[{key:2},{key:3}]}]


如果有更多对象,新数组中的下一个对象将是
类型:3
,其中
块将包含4个元素。然后,它再次从
type:1
开始。因此,任何大小的数组都必须根据模板的逻辑进行转换。对不起我的语言,这对我来说是一个超级复杂的解释。如果有什么不清楚的地方,我将立即回答

您可以根据
7项
作为一个单元来实现,如下所示

const input=[{key:1}、{key:2}、{key:3}、{key:4}、{key:5}、{key:6}、{key:7}、{key:8}、{key:9}];
常量结果=[];
对于(设i=0;i控制台日志(结果)天哪,当你看到一个已实现的决策时,这真的很简单。非常感谢。