js一维数组二与维数组的转换??

JS一维数组与二维数组的转换!!

二维转一维可以先遍历一般,把所有的元素都作为属性给一个对象,然后在把二维的数组再遍历也赋给给对象。
完事儿后,声明一个一维数组,遍历之前对象,然后把遍历到的push给改数组。

一维转二维,按照你的规则先摘出一部分,作为元素给一个对象的某个属性(eg,a属性),剩下的作为对象的其他属性(eg。b,c,d,e等属性)。然后根据属性遍历生成二维。遍历a属性的属性生成一个数组,其他的跟这个操作相同了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-12
遍历呗,然后拼接拆解数组追问

具体写一下步骤好吗?

追答

你说明下转换的条件

var t = [1,2,3,4,5,6],
i = 0,
len = t.length,
splitNum = 3,
newT = [];

for(; i < len;) {
var arr = [],
a = t[i],
j = 0;
for(; j < splitNum; j++) {
arr.push(t[i]);
i++;
}
newT.push(arr);
}
console.log(newT);

var s = [1,2,3,4,5,6,7],
splitNum = 3,
newA = [];

while(s.length) {
var len = s.length > splitNum ? splitNum : s.length;
newA.push(s.splice(0, len));
}
console.log(newA);

第2个回答  2015-05-12
只能自己根据数组来写。。具体要看数组是什么样的。追问

比如t={1,2,3,4,5,6,7,8,9}
转换成r={{1,2,3},{4,5,6},{7,8,9}}

追答

这个要自己来拼接的。。
是固定的这个格式吗??

相似回答