当var==0时,我如何显示一个警报

How can I show one alert when ever a var == 0?

本文关键字:var 一个 显示 何显示 0时      更新时间:2023-09-26

我目前正在尝试制作一款简单的纸牌比较游戏,但遇到了一些问题。当var playerLife或computerLife==0时,我想显示一条警告消息,并刷新新游戏的页面。如果你向下滚动,你可以看到我正试图使用If语句来实现这一点,但它似乎不起作用。我对这方面还很陌生,所以欢迎所有的帮助和建议。此外,如果我现在的代码可以更好,我应该很乐意听到它。谢谢你的时间。

var cards = [1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10,
            1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8,8, 9, 9, 10, 10];
var shuffledCards = shuffle(cards);
var playerDeck = shuffledCards.slice(0,20);
var computerDeck = shuffledCards.slice(20);
var playerlife = 25;
var computerLife = 25;
function shuffle(array) {
    var m = array.length, t, i;
    // While there remain elements to shuffle…
    while (m) {
        // Pick a remaining element…
        i = Math.floor(Math.random() * m--);
        // And swap it with the current element.
        t = array[m];
        array[m] = array[i];
        array[i] = t;
    }
    return array;
}
function getTopCard(deck) {
    return deck[0];
}
function dealCards() {
    var playerTopCard = getTopCard(playerDeck);
    var computerTopCard = getTopCard(computerDeck);
    var cardImage = "<img src='http://i1194.photobucket.com/albums/aa365/Sarah_Dunlap/card_back.png'/>";
    whoWon();
    console.log('--------------------');
    document.getElementById("card1").innerHTML = "<div class='cardNumber'>" + playerTopCard + '</div>' + cardImage;
    document.getElementById("card2").innerHTML = "<div class='cardNumber'>" + computerTopCard + '</div>' + cardImage;
    document.getElementById("scoreComputer").innerHTML = computerLife;
    document.getElementById("scorePlayer").innerHTML = playerlife;
}
function whoWon() {
    var playerTopCard = getTopCard(playerDeck);
    var computerTopCard = getTopCard(computerDeck);
    if (playerTopCard > computerTopCard) {
        console.log('Player Won! ' + playerTopCard + '/' + computerTopCard);
        computerLife = computerLife - (playerTopCard - computerTopCard);
        playerDeck.shift();
        computerDeck.shift();
        console.log('Player Life - ' + playerlife);
        console.log('Computer Life - ' + computerLife);
    } else if (playerTopCard < computerTopCard) {
        console.log('Computer Won! ' + playerTopCard + '/' + computerTopCard);
        playerlife = playerlife - (computerTopCard - playerTopCard);
        playerDeck.shift();
        computerDeck.shift();
        console.log('Player Life - ' + playerlife);
        console.log('Computer Life - ' + computerLife);
    } else {
        console.log('Tie! ' + playerTopCard + '/' + computerTopCard);
        playerDeck.shift();
        computerDeck.shift();
        console.log('Player Life - ' + playerlife);
        console.log('Computer Life - ' + computerLife);
    }
}
shuffle(cards);
console.log('playerDeck - ' + playerDeck);
console.log('computerDeck - ' + computerDeck);
document.getElementById("click").addEventListener("click", dealCards);
(function gameEnd () {
    if (playerlife <=0 || computerLife <=0) {
        alert('DONE');
    }
}());

您应该考虑这样更改代码:

// new function
function checkIsGameOver () {
    if (playerlife <=0 || computerLife <=0) {
        alert('DONE');
    }
}
function whoWon() {
    var playerTopCard = getTopCard(playerDeck);
    var computerTopCard = getTopCard(computerDeck);
    if (playerTopCard > computerTopCard) {
        console.log('Player Won! ' + playerTopCard + '/' + computerTopCard);
        computerLife = computerLife - (playerTopCard - computerTopCard);
        // added code here... 
        checkIsGameOver();
        playerDeck.shift();
        computerDeck.shift();
        console.log('Player Life - ' + playerlife);
        console.log('Computer Life - ' + computerLife);
    } else if (playerTopCard < computerTopCard) {
        console.log('Computer Won! ' + playerTopCard + '/' + computerTopCard);
        playerlife = playerlife - (computerTopCard - playerTopCard);
        // added code here...
        checkIsGameOver();
        playerDeck.shift();
        computerDeck.shift();
        console.log('Player Life - ' + playerlife);
        console.log('Computer Life - ' + computerLife);
    } else {
       console.log('Tie! ' + playerTopCard + '/' + computerTopCard);
       playerDeck.shift();
       computerDeck.shift();
       console.log('Player Life - ' + playerlife);
       console.log('Computer Life - ' + computerLife);
    }
}