js 一维数组转二维数组
时间: 2023-09-09 10:08:49 浏览: 112
JavaScript实现一维数组转化为二维数组
要将一个一维数组转换为二维数组,你可以使用循环或其他方法来按照所需的行和列分割原始数组。下面是两种常见的方法:
方法一:使用循环进行分割
```javascript
function convertTo2DArray(arr, rows, cols) {
var result = [];
var index = 0;
for (var i = 0; i < rows; i++) {
var row = [];
for (var j = 0; j < cols; j++) {
if (index < arr.length) {
row.push(arr[index]);
}
index++;
}
result.push(row);
}
return result;
}
var arr = [1, 2, 3, 4, 5, 6];
var rows = 2;
var cols = 3;
var result = convertTo2DArray(arr, rows, cols);
console.log(result);
// 输出: [[1, 2, 3], [4, 5, 6]]
```
在上面的示例中,`convertTo2DArray` 函数接受原始数组 `arr`、期望的行数 `rows` 和列数 `cols`。通过嵌套的循环,我们按照所需的行和列分割原始数组,并将结果存储在 `result` 中。
方法二:使用 `slice()` 方法进行分割
```javascript
function convertTo2DArray(arr, rows, cols) {
var result = [];
for (var i = 0; i < arr.length; i += cols) {
result.push(arr.slice(i, i + cols));
}
return result;
}
var arr = [1, 2, 3, 4, 5, 6];
var rows = 2;
var cols = 3;
var result = convertTo2DArray(arr, rows, cols);
console.log(result);
// 输出: [[1, 2, 3], [4, 5, 6]]
```
在上面的示例中,我们使用 `slice()` 方法按照 `cols` 的大小将原始数组分割成子数组,并将它们存储在 `result` 中。
无论使用哪种方法,你都可以将一维数组转换为二维数组。只需根据需要选择适合你的方法即可。
阅读全文