JavaScript 如何创建二维数组

JavaScript 如何创建二维数组

二维数组 是一组具有相同名称的项,它们以行和列的形式组织成矩阵。二维数组是数组的数组,因此我们创建一个一维数组对象的数组。

我们可以用多种方法创建二维数组:

  • 使用嵌套的for循环
  • 使用数组字面量
  • 使用Array.from()方法
  • 使用Array.fill()方法

方法1: 使用嵌套的 for循环

示例1: 在这个示例中,我们将构建一个使用整数值的二维数组。

let gfg = [];
let row = 3;
let col = 3;
let h = 0
 
// Loop to initialize 2D array elements.
for (let i = 0; i < row; i++) {
    gfg[i] = [];
    for (let j = 0; j < col; j++) {
        gfg[i][j] = h++;
    }
}
console.log(gfg);

输出

[ [ 0, 1, 2 ], [ 3, 4, 5 ], [ 6, 7, 8 ] ]

示例2:在这个示例中,我们将使用字符串值创建一个二维数组。

let gfg = new Array(3);
for (let i = 0; i < gfg.length; i++) {
    gfg[i] = [];
}
let h = 0;
let s = "GeeksforGeeks";
 
// Loop to initialize 2D array elements.
for (let i = 0; i < 3; i++) {
    for (let j = 0; j < 3; j++) {
 
        gfg[i][j] = s[h++];
    }
}
console.log(gfg);

输出

[ [ 'G', 'e', 'e' ], [ 'k', 's', 'f' ], [ 'o', 'r', 'G' ] ]

方法2:使用字面量表示法

示例: 在这个示例中,我们将手动创建一个二维数组。这是存储学生信息的二维数组。

let MathScore = [
    ["Bar", 20, 60, "A"],
    ["Foo", 10, 52, "B"],
    ["Joey", 5, 24, "F"],
    ["John", 28, 43, "A"],
    ["Liza", 16, 51, "B"]
];
console.log(MathScore);

输出

[
  [ 'Bar', 20, 60, 'A' ],
  [ 'Foo', 10, 52, 'B' ],
  [ 'Joey', 5, 24, 'F' ],
  [ 'John', 28, 43, 'A' ],
  [ 'Liza', 16, 51, 'B' ]
]

方法3:使用Array.from()方法

JavaScript中的 Array from() 方法可以从任何具有length属性或可迭代对象中返回一个数组对象。

示例:

const rows = 3;
const columns = 4;
const matrix = Array.from({ length: rows }, () => 
               new Array(columns).fill(0));
console.log(matrix);

输出

[ [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ] ]

方法4: 使用Array.fill()方法

在这种方法中,我们将使用fill()方法和map方法来创建Javascript中的二维数组。

示例:

const rows = 3;
const columns = 4;
 
const matrix = Array(rows).fill().map(() => 
               Array(columns).fill(0));
                
console.log(matrix);

输出

[ [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ], [ 0, 0, 0, 0 ] ]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程