【发布时间】:2018-10-04 12:49:38
【问题描述】:
数组是 40 x 40 所以 [0 - 39][0 - 39]。
有没有一种方法可以让我遍历数组并选择每个项目而不选择项目两次但随机执行, 所以没有像 for(i = 0; i 这样的循环。 对不起,如果我的解释不好
将数组转换为一维数组
newArray = [];
for (var i = 0; i < gridsize; i ++) {
for (var j = 0; j < gridsize; j ++) {
newArray.push(grid[i][j])
}
}
newArray = shuffle(newArray)
然后我会像这样遍历数组
for (var x = 0; x < newArray.length; x ++) {
i = newArray[x].x
j = newArray[x].y
switch(grid[i][j].id) {
所以因为数组已经被打乱了,我可以得到一个新的随机点来搜索,还有比这更有效的方法吗?
【问题讨论】:
-
哦,有多种方法,您能否与我们分享您的尝试,以便我们帮助调试您的代码?我敢肯定,您不会期望我们为您编写代码 :-)
-
标准方法是为每个包含数字 0 到 39 的维度创建数组,然后 shuffle 数组。
标签: javascript sorting random