Javascript 如果没有一个玩家是赢家,你会用抽签吗?

Javascript 如果没有一个玩家是赢家,你会用抽签吗?,javascript,jquery,function,frontend,boolean-logic,Javascript,Jquery,Function,Frontend,Boolean Logic,我如何确定是否有平局?begginer编码器问题 我可以确定谁是赢家,但似乎不知道如何实现抽签部分!请帮忙 这是我的代码不是最漂亮的,让我知道如何改进 var-player=1 $('.box').on('click', function(event) { alert('add symbol here'); var boxSelected = $(this); $("#goAgain").click(function(event) { locatio

我如何确定是否有平局?begginer编码器问题 我可以确定谁是赢家,但似乎不知道如何实现抽签部分!请帮忙

这是我的代码不是最漂亮的,让我知道如何改进

var-player=1

$('.box').on('click', function(event) {


    alert('add symbol here');
    var boxSelected = $(this);

    $("#goAgain").click(function(event) {
        location.reload();
    });



    if (boxSelected.hasClass('exes') || boxSelected.hasClass('ohs')) {
        alert('Sorry, that has already been taken!');
    } else {
        if (player === 1) {
            boxSelected.addClass('exes');
            if (checkIfPlayerWon('exes')) {
                alert('Congrats! Player ' + player + 'has won the game!');
            } else {
                player = 2;

            }
        } else {
            boxSelected.addClass('ohs');
            if (checkIfPlayerWon('ohs')) {
                alert('Congrats! Player ' + player + 'has won the game!');
            } else {
                player = 1;

            }

        }

    }
});







function checkIfPlayerWon(symbol) {
    if ($('.sq1').hasClass(symbol) && $('.sq2').hasClass(symbol) && $('.sq3').hasClass(symbol)) {
        return true;

    } else if ($('.sq4').hasClass(symbol) && $('.sq5').hasClass(symbol) && $('.sq6').hasClass(symbol)) {
        return true;

    } else if ($('.sq7').hasClass(symbol) && $('.sq8').hasClass(symbol) && $('.sq9').hasClass(symbol)) {
        return true;

    } else if ($('.sq1').hasClass(symbol) && $('.sq4').hasClass(symbol) && $('.sq7').hasClass(symbol)) {
        return true;

    } else if ($('.sq2').hasClass(symbol) && $('.sq5').hasClass(symbol) && $('.sq8').hasClass(symbol)) {
        return true;

    } else if ($('.sq3').hasClass(symbol) && $('.sq6').hasClass(symbol) && $('.sq9').hasClass(symbol)) {
        return true;
    } else if ($('.sq1').hasClass(symbol) && $('.sq5').hasClass(symbol) && $('.sq9').hasClass(symbol)) {
        return true;
    } else if ($('.sq3').hasClass(symbol) && $('.sq5').hasClass(symbol) && $('.sq9').hasClass(symbol)) {
        return true;

    } else {
        return false;



    }
}

})

如果您有一个类.square,所有的square都有,那么您可以在该类上运行一个forEach循环,如$.square.forEachfunction{…,检查方块是否为空。如果没有一个方块为空,则布尔游戏仍然为假,在同步循环完成后,您将启动抽签游戏例行程序。

检查游戏是否已完成所有方块,但两名玩家均未获胜。为什么会被否决?@Lamar Smith有一个我知道还有其他方法,但它与您当前的实现非常不同。