📅  最后修改于: 2023-12-03 14:53:52.633000             🧑  作者: Mango
在 JavaScript 中,我们可以使用嵌套数组来模拟矩阵。实现从一维数组到矩阵的转换是很有用的。
下面是一个将数组项转换为矩阵的示例代码:
function toMatrix(arr, rows, cols) {
var matrix = [], i, j, k = 0;
for (i = 0; i < rows; i++) {
matrix[i] = [];
for (j = 0; j < cols; j++) {
matrix[i][j] = arr[k++];
}
}
return matrix;
}
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var matrix = toMatrix(arr, 3, 3);
console.log(matrix);
这个函数将一个一维数组转换为一个包含指定行和列的矩阵。传递给函数的参数是原始数组以及要创建的矩阵的行和列数。
在函数内部,我们声明了一个名为 matrix
的空数组。我们使用嵌套的 for
循环来迭代 rows
和 cols
并填充 matrix
数组。在内部循环中,我们将 arr
中的每个项赋给 matrix[i][j]
。我们使用一个变量 k
来跟踪 arr
数组的位置。
最后,我们返回 matrix
数组,它现在包含了指定行和列的矩阵。在上面的示例中,返回的矩阵是一个 3x3 的矩阵。
这个函数可以非常方便地将一维数组转换为矩阵,并且可以扩展用于更复杂的问题。