JavaScript生成二维数组的多种方法小结

admin 轻心小站 关注 LV.19 运营
发表于JS技术学习版块 教程

在JavaScript中生成二维数组,即数组的数组,可以通过多种方法实现。以下是一些常用的方法:1. 使用嵌套数组字面量let array2D = [[1, 2, 3], [4, 5, 6], [7,

在JavaScript中生成二维数组,即数组的数组,可以通过多种方法实现。以下是一些常用的方法:

1. 使用嵌套数组字面量

let array2D = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];

2. 使用Array构造函数

// 创建一个3x3的二维数组,所有元素初始化为null
let array2D = new Array(3);
for (let i = 0; i < array2D.length; i++) {
    array2D[i] = new Array(3);
}

3. 使用Array.fill方法

// 创建一个3x3的二维数组,所有元素初始化为0
let array2D = Array(3).fill().map(() => Array(3).fill(0));

4. 使用展开运算符(Spread Operator)

// 创建一个3x3的二维数组,复制一个已有的数组
let originalArray = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
let array2D = [...originalArray];

5. 使用map方法

// 创建一个3x3的二维数组,所有元素初始化为某个值
let array2D = Array.from({ length: 3 }, () => Array(3).fill(0));

6. 使用for循环

let array2D = [];
for (let i = 0; i < 3; i++) {
    array2D[i] = [];
    for (let j = 0; j < 3; j++) {
        array2D[i][j] = 0; // 或者任何你想初始化的值
    }
}

7. 使用Array.prototype.map

let array2D = Array.from({ length: 3 }, () => Array(3).fill(0));

8. 使用Array.prototype.reduce

let array2D = Array(3).reduce((acc, val, i) => {
    acc.push(Array(3).fill(i));
    return acc;
}, []);

9. 使用工厂函数

function create2DArray(rows, cols, initialValue) {
    return Array.from({ length: rows }, () => Array(cols).fill(initialValue));
}

let array2D = create2DArray(3, 3, 0);

10. 使用Array.prototype.flat

如果你有一个一维数组,并且想要将其转换为二维数组,可以使用flat方法:

let flatArray = new Array(9).fill(0);
let array2D = flatArray.flat(2); // 将一维数组转换为3x3的二维数组

每种方法都有其使用场景,你可以根据具体需求选择最合适的方法。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: JavaScript生成二维数组的多种方法小结

粉丝

0

关注

0

收藏

0

已有0次打赏