如何在井字游戏中切换回合

时间:2021-02-11 18:21:33

标签: javascript arrays

我正在为一个小型学校项目开发井字游戏,但我一直在思考如何更换玩家。代码如下所示:

function clickTurn(square) {
    if (typeof playBoard[square.target.id] == 'number') {
        turn(square.target.id, player1);
        turn(square.target.id, player2);
    }
}

function turn(squareId, player) {
    playBoard[squareId] = player;
    document.getElementById(squareId).innerText = player;
    console.log(playBoard);
    let gameWon = checkWin(playBoard, player)
    if (gameWon) {
        gameOver(gameWon)
    }
}

我知道连续两次调用turn函数是不行的,我怎样才能做到在用player1调用后,用player2再调用一次?

1 个答案:

答案 0 :(得分:1)

跟踪当前玩家并在移动后交换他们

var player1 = 'O';
var player2 = 'X';
var currentPlayer = player1;

function clickTurn(square) {
    if (typeof playBoard[square.target.id] == 'number') {
        turn(square.target.id, currentPlayer);
    
        if (currentPlayer === player1) {
            currentPlayer = player2;
        } else {
            currentPlayer = player1;
        }
        // currentPlayer = currentPlayer === player1 ? player2 : player1;
    }

}