我正在使用html,css和javascript制作井字游戏。我已经设法取得了一些进展,但是无论我多么努力,都有两个我无法弄清的错误。
第一个是它不会在最后一个块(9)上接受输入。在添加用于检查获胜和平局的代码后,它不再起作用。
第二个是AI在我的第二步而不是第一步开始播放。这一定是一个简单的逻辑错误,但我看不到。
这是我关于repl.it的代码: https://repl.it/@julkothegu1/Yes
谢谢。
答案 0 :(得分:1)
您遇到的是基于0比1的问题。只需将HTML更改为此:
<table>
<tr>
<td class='block' id='0'></td>
<td class='block' id='1'></td>
<td class='block' id='2'></td>
</tr>
<tr>
<td class='block' id='3'></td>
<td class='block' id='4'></td>
<td class='block' id='5'></td>
</tr>
<tr>
<td class='block' id='6'></td>
<td class='block' id='7'></td>
<td class='block' id='8'></td>
</tr>
</table>
答案 1 :(得分:0)
问题是您将数组索引用作ID的值。但是,数组的计数从0开始,而ID的计数从1开始。
这最终导致在第一次播放时,计算将尝试在不存在的id“ 0”上播放。
当您单击最后一个元素时,id和索引之间也会不匹配。
要解决这两个问题,请在HTML上将ID计数从0开始。