这是相关代码:
let table = document.getElementById("table");
let counter = 0;
let arr = [
[],
[]
];
let win = 0;
table.addEventListener("click", function(e) {
let r = parseInt(e.target.parentElement.rowIndex);
let c = parseInt(e.target.cellIndex);
if (counter % 2 == 0) {
e.target.classList.add("cross");
arr[c][r] = 1;
} else {
e.target.classList.add("cricle");
arr[c][r] = 2;
}
counter++;
console.log(arr);
})
#table { border-collapse: collapse; }
td { padding: 20px; border: 1px solid black; }
<table id="table">
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
此表的外观如下:https://i.imagesup.co/images2/912bc616f03df0e6a75509d7ce36b17e1a2fbbfb.png
非常感谢您的帮助!
let arr = [[],[]];
定义一个数组。然后使用arr[c][r] = 1;
或arr[c][r] = 2;
设置一个值因此,当单击第3列时,您想为arr[2][r]...
分配一些内容。在这种情况下,数组的长度仅为2。([[],[]]
)(arr[0][r]
和arr[1][r]
正在运行...)
因此arr[2][r]
未定义。