从 Javascript 中的二维数组中获取列
Getting column from two dimensional array in Javascript
我目前正在尝试制作一个有 2 名玩家的游戏,为了检查字段,我需要检查数组的列而不是行
这是我目前拥有的代码:
/* Array containing the playing field 8 x 8
C0 C1 C2 C3 C4 C5 C6 C7
R0[0][0][0][0][0][0][0][0]
R1[0][0][0][0][0][0][0][0]
R2[0][0][0][0][0][0][0][0]
R3[0][0][0][0][0][0][0][0]
R4[0][0][0][0][0][0][0][0]
R5[0][0][0][0][0][0][0][0]
R6[0][0][0][0][0][0][0][0]
R7[0][0][0][0][0][0][0][0]
*/
var row0 = [1,2,3,4,5,6,7,8],
row1 = [0,0,0,0,0,0,0,0],
row2 = [0,0,0,0,0,0,0,0],
row3 = [0,0,0,0,0,0,0,0],
row4 = [0,0,0,0,0,0,0,0],
row5 = [0,0,0,0,0,0,0,0],
row6 = [0,0,0,0,0,0,0,0],
row7 = [0,0,0,0,0,0,0,0];
var field = [row0,row1,row2,row3,row4,row5,row6,row7];
console.log(field[0][0]); // Get the first item in the array
单击一列会发送一个从 1-8(8 列)的数字,这将进入以下功能:
function doeZet(id) {
// check alle cellen van 8 -> 0
for (j=7; j>=0; j--) {
console.log(id)
console.log(field[j,id-1]);
}
}
但是,这会返回行 id 而不是 id 中的列,我不确定如何解决这个问题。
您的帮助将不胜感激!
提前致谢
在Gavriel的帮助下编辑解决方案:
function doeZet(id) {
// check alle cellen van 8 -> 0
for (j=7; j>=0; j--) {
if(field[j][id-1] == 0)
{
field[j][id-1] = 1
console.log(j)
return j
}
}
}
而不是:
console.log(field[j,id-1]);
你需要:
console.log(field[j][id-1]);
字段 [j,id-1] 表示:字段 [x],xhere x 是一个表达式:j,id-1
,该表达式等于id-1
相关文章:
- 作为一个二维数组,从ajax接收
- 创建P5.js二维数组
- 如何在Javascript中从select标记的一系列选项中构建二维数组
- inArray,indexOf在二维数组中
- 比较二维数组js
- 从二维数组中获取img src和img维度,并在body中显示
- 如何在Java Script中比较二维数组和一维数组,并将常见数据存储在另一个数组中
- 如何将以下字符串拆分为二维数组:
- 更新Aurelia中二维数组的视图
- 如何在JavaScript中拆分二维数组
- 从 Javascript 中的二维数组中获取列
- 从Javascript中的二维数组中获取值
- 获取二维数组JavaScript中两点之间的距离
- 什么是更有效或更短的分组方式,然后使用下划线获取二维数组的百分比值
- 如何从二维数组(JS)中获取网格的坐标
- 从二维数组中获取列
- 在客户端填充二维数组,并在服务器端获取该数组
- 无法在Javascript中从二维数组中获取值
- 在迭代二维数组时获取外部 for 循环的索引
- 根据选择的下拉文本字符串获取二维数组值