javascript - 基本的井字游戏 JavaScript

标签 javascript

我正在努力在我想做的这个程序中添加轮流选项。我需要在玩家点击的地方添加一个“X”,然后在第二次点击时添加一个“O”。当我运行此代码时,每次单击它时,它只会执行 "X" 。我该如何改变这个?

 function X() {
     this.innerHTML = "X";
 }

 function O() {
     this.innerHTML = "O";
 }

 function XDO() {
     for (i = 1; i <= 9; i++) {
         document.getElementById("cell" + i).onclick = X;
     }
 }

 function ODO() {
     for (i = 1; i <= 9; i++) {
         document.getElementById("cell" + i).onclick = O;
     }
 }

 var turn = true;

 if (turn == true) {
     XDO();
     turn == false;

 } else if (turn == false) {
     ODO();
     turn == true;    
 }

最佳答案

在下面的代码片段中..

if(turn==true)
{
XDO();
turn==false; // assignment operator should be used turn =false

}
else if(turn ==false)
{

ODO();
turn==true; // assignment operator should be used turn =true

}

使用了比较运算符(==),应该是赋值运算符(=)

关于javascript - 基本的井字游戏 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29865535/

相关文章:

javascript - 如何在 NextJs 中缓存字体?

javascript - 如何使用 javascript 抓取复杂的登录页面?

javascript - momentjs:如何获取特定时区的日期

javascript - 如何优化在 canvas JS 上绘制大量元素?

javascript - 触发上传文件时如何保持全屏?

javascript - highcharts:类型错误:无法读取未定义的属性 '0'

javascript - 手感持久的 CSS

javascript - 如何使用正则表达式将文本设置为小写?

javascript - angularjs $resource 将查询资源列表转换为对象数组

javascript - Redux:将 `reducres` 与非平坦状态结合起来,避免创建大量 reducer