所以我有
var arrays = [
[ Material A, 1, 2, 3, 4, 5 ],
[ Material B, 6, 7, 8, 9, 10 ],
[ Material C, 11, 12, 13, 14, 15 ]
];
我需要把它放在这种多维关联数组的格式中,
var bigdata = [
{ "Name": "MaterialA", "Row1": 1, "Row2": 2, "Row3": 3, "Row4": 4, "Row5": 5 },
{ "Name": "MaterialB", "Row1": 6, "Row2": 7, "Row3": 8, "Row4": 9, "Row5": 10 },
{ "Name": "MaterialC", "Row1": 11, "Row2": 12, "Row3": 13, "Row4": 14, "Row5": 15 }
];
我在努力
var bigdata = new Array(3);
for (i=0; i<3; i++)
{
// do name
bigdata[i][0] = {"Name" : arrays[i][0]};
for (j=1; j<6; j++ )
{
// rest of that row
}
}
但到目前为止,当我尝试存储第一个 "Name": "MaterialA"时它不起作用。我做错了什么,甚至可以这样做吗?感谢您的帮助。
最佳答案
这对我有用。请注意,我从您的 bigdata[i][0]
中删除了 [0]
,并将行分配代码添加到您的“j”循环中。
for (i=0; i<3; i++)
{
// do name
bigdata[i] = {"Name" : arrays[i][0]};
for (j=1; j<6; j++ )
{
// rest of that row
bigdata[i]['Row' + j] = arrays[i][j];
}
}
JSFiddle:http://jsfiddle.net/ub54S/1/
关于javascript多维关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24432702/