js 一个长度为21的数组,将他变为长度为7的二维数组
时间: 2024-03-08 14:49:52 浏览: 103
可以使用 JavaScript 的 `splice()` 方法将原先的数组切割成多个长度为 7 的子数组,然后将这些子数组存放到一个新的二维数组中。下面是一段示例代码:
```javascript
const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21];
const newArr = [];
while (arr.length > 0) {
newArr.push(arr.splice(0, 7));
}
console.log(newArr); // [[1, 2, 3, 4, 5, 6, 7], [8, 9, 10, 11, 12, 13, 14], [15, 16, 17, 18, 19, 20, 21]]
```
在这个例子中,我们首先创建了一个长度为 21 的数组 `arr`。然后我们定义一个空的数组 `newArr` 作为二维数组的容器。使用 `while` 循环,我们不断地从 `arr` 中取出前 7 个元素,并将它们存放到一个新的子数组中。这个新的子数组随后被推入到 `newArr` 中。当 `arr` 中的元素全部被取出来后,`newArr` 中就存放了所有的子数组,也就是我们想要的二维数组。
相关问题
js将一个长度为9的数组变为一个长度为3的二维数组
你可以使用 JavaScript 中的 `slice()` 函数和循环来将长度为9的数组转换为长度为3的二维数组。具体实现方法如下:
```javascript
let arr1d = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let arr2d = [];
for (let i = 0; i < arr1d.length; i += 3) {
arr2d.push(arr1d.slice(i, i + 3));
}
console.log(arr2d);
```
这段代码中,我们首先定义了一个长度为9的一维数组 `arr1d`,然后声明了一个空的二维数组 `arr2d`。接着,我们使用循环和 `slice()` 函数将 `arr1d` 中的元素分割成长度为3的小数组,并将这些小数组添加到 `arr2d` 中。最后,我们输出 `arr2d`,即得到了将 `arr1d` 转换为二维数组的结果。
js 把一维数组变成二维数组
这个问题属于编程问题,我可以为您解答。在 JavaScript 中,可以使用数组的 slice 方法和循环语句来将一维数组转换为二维数组。具体的实现方式可以参考以下代码:
```javascript
// 定义一个一维数组
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
// 将一维数组转换为二维数组,并且每个子数组的长度为3
function toTwoDimensional(arr, num) {
var result = [], i = 0;
while(i < arr.length) {
result.push(arr.slice(i, i + num));
i += num;
}
return result;
}
// 调用函数将一维数组转换为二维数组
var arr2 = toTwoDimensional(arr1, 3);
console.log(arr2); // [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
```
阅读全文