JavaScript——多维数组
常见二维数组操作
创建
使用Array对象创建
方法类似于创建一维数组,不过要将数组元素设置为数组;
var info = new Array(new Array('Tom', 15, 160), new Array('Lucy', 16, 155));
var empty = new Array(new Array, new Array); //空二维数组
直接使用“[ ]”创建
var info = [[1, 2], [3, 4]];
var empty = [[], []]; //空二维数组
通过多维空数组添加元素的方法创建
var arr = []; //创建一个空数组
for (var i = 0; i < 3; ++i) {
arr[i] = []; //将当前数组的元素设置为数组
arr[i][0] = i; //为二维数组赋值,“0”数组是下标
...
}
遍历
二维数组只需在遍历数组后,再次遍历数组的元素,即可获取二维数组的元素值;
// 二维数组的求和
var arr = [[12, 59, 66], [100, 888]];
var sum = 0;
for (var i in arr) {
//遍历数组的行
for (var i in arr[i]) {
//遍历数组的列
sum += arr[i][j]; //二维数组元素累计相加
//例如arr[0]就是[12, 59, 66],arr[0][1]就是59
}
}
console.log('二维数组求和等于' + sum);
二维数组转置
二维数组的转置就是将二维数组的横向元素保存为纵向元素,即列变为行,行变为列。设转置前的数组为arr,转置后的数组为res,那么就有arr[i][j]=res[j][i],且res数组的长度等于arr元素的长度,res元素的长度等于arr数组的长度;
- 转置前arr
[
[‘a’, ‘b’, ‘c’],
[‘d’, ‘e’, ‘f’],
[‘g’, ‘h’, ‘i’],
[‘j’, ‘k’, ‘l’],
] - 转