Javascript 格式化非结构化数组
我目前有一个平面数据集,我想用不同的标题名来格式化它。我试着找一些类似的例子,但什么也找不到。在使用第二组数据创建第二个数组之前,我只需要第一个数组中的前3项。我掌握的数据是:Javascript 格式化非结构化数组,javascript,arrays,object,Javascript,Arrays,Object,我目前有一个平面数据集,我想用不同的标题名来格式化它。我试着找一些类似的例子,但什么也找不到。在使用第二组数据创建第二个数组之前,我只需要第一个数组中的前3项。我掌握的数据是: [ ['Peoples Revolutionary Party', '52', '#F2D7D5', 'Peoples Revolutionary Party', 'Farmer Labor Party', '40', '#1db309', 'Farmer Labo
[
['Peoples Revolutionary Party',
'52',
'#F2D7D5',
'Peoples Revolutionary Party',
'Farmer Labor Party',
'40',
'#1db309',
'Farmer Labor Party',
'Democratic Party',
'145',
'#1c7eff',
'Democratic Party',
'NEW',
'1',
'#ff0000',
'NEW',
'States Rights Party',
'5',
'#011d57',
'States Rights Party',
'The Party',
'58',
'#800020',
'The Party',
'California National Party',
'9',
'#d9a517',
'California National Party',
'Independent',
'7',
'grey',
'Independent',
'United Foxboro Party',
'2',
'#0722ed',
'United Foxboro Party',
'Republican Party',
'75',
'red',
'Republican Party',
'Gulf Coast Party',
'16',
'#b4b710',
'Gulf Coast Party',
'Libertarian Party',
'11',
'#ffd700',
'Libertarian Party',
'American Fascist Party',
'8',
'#000000',
'American Fascist Party',
'American Nationalist Party',
'2',
'#5c4033',
'American Nationalist Party']
]
我想得到如下数据:
[
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}],
[name: "Peoples Revolutionary Party", info: {seats: "52", color: "#F2D7D5"}]
]
像那样
const input=['人民革命党',
'52',
"F2D7D5",,
"人民革命党",,
"农民工党",,
'40',
“#1db309”,
"农民工党",,
"民主党",,
'145',
"1c7eff",,
"民主党",,
"新",,
'1',
#ff0000",,
"新",,
“国家人权党”,
'5',
“011d57”,
“国家人权党”,
"党",,
'58',
'#800020',
"党",,
“加州国家党”,
'9',
"d9a517",,
“加州国家党”,
"独立",,
'7',
“灰色”,
"独立",,
“福克斯博罗联合党”,
'2',
"0722ed",,
“福克斯博罗联合党”,
"共和党",,
'75',
“红色”,
"共和党",,
"海湾党",,
'16',
"b4b710",,
"海湾党",,
“自由意志党”,
'11',
#ffd700",,
“自由意志党”,
"美国法西斯党",,
'8',
'#000000',
"美国法西斯党",,
"美国国民党",,
'2',
"5c4033",,
“美国民族主义党”];
设i,j,chunk=4
常量输出=[];
对于(i=0,j=input.length;i您需要一次切片4个元素,然后将这四个元素转换为您想要的对象-为什么它是一个二维数组?-此外,您的输出格式无效-我该如何执行此操作?@Tune,通过使用数组切片和其他代码const output=input.map(a=>a.slice(0,a.length>>2).map(u,i)=>({name:a[iclose,但您已将OP的输入数据更改为一维数组。此输出毫无意义,[name:xxx,info:{…}]
无效,如果您使用const[name,color,seats]=input.slice(i,i+chunk)
您可以将push调用更改为output.push({name,info:{color,seats}})
哪个更干净。