繁体   English   中英

在 JavaScript 中创建二维数组

[英]creating 2d array in JavaScript

我是 js 的新手并试图创建一个 2D 数组,但是当我运行代码时,我进入了控制台Array(10) [ <10 empty slots> ]即使我用值填充了数组。
这是我的 js 和 HTML:

 function Make2Darray(cols, rows) { let arr = new Array(cols); for (let i = 0; i < arr.lenght; i++) { arr[i] = new Array(rows); for (let j = 0; j < rows; j++) { arr[i][j] = floor(random(2)); } } return arr; } let grid; grid = Make2Darray(10, 10); console.log(grid);
 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Game of Life</title> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/p5@1.1.9/lib/p5.min.js"></script> <script type="text/javascript" src="gol.js"></script> </head> <body> </body> </html>

你犯了两个错误:第三行,这不是你想要的arr.length而是cols然后, floor 和 random 是 JS 提供的数学库的一部分,所以像这样使用它:

arr[i][j] = Math.floor(Math.random() * 2);

我不确定你想用floor(random(2))部分做什么,但你可以创建如下二维数组:

 function Make2Darray(rows, cols) { let arr = [] for (let i = 0; i < rows; i++) { arr[i] = [] for (let j = 0; j < cols; j++) { arr[i][j] = Math.floor(Math.random()) // You can change the value in this part } } return arr } let grid = Make2Darray(10, 10) console.log(grid)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM