Javascript 21点中的showResult函数不工作

Javascript 21点中的showResult函数不工作,javascript,blackjack,Javascript,Blackjack,我的21点显示结果函数不能正常工作,尽管它传递了正确的参数来计算游戏的赢家。我将函数嵌套在deal按钮的函数中,以测试它是否工作 特定的computeWinner函数: function computeWinner() { let winner; if (YOU['score'] <= 21) { if (YOU['score'] > DEALER['score'] || (DEALER)['score'] > 21) { console.log('You won'

我的21点显示结果函数不能正常工作,尽管它传递了正确的参数来计算游戏的赢家。我将函数嵌套在deal按钮的函数中,以测试它是否工作

特定的computeWinner函数:

function computeWinner() {
    let winner;

if (YOU['score'] <= 21) {
if (YOU['score'] > DEALER['score'] || (DEALER)['score'] > 21) {
console.log('You won');
winner = YOU;

} else if (YOU['score'] < DEALER['score']) {
    console.log('You lost');
    winner = DEALER;

} else if (YOU['score'] === DEALER['score']) {
    console.log('You drew');
}

} else if (YOU['score'] > 21 && DEALER['score'] <= 21) {
    console.log('You lost');
    winner = DEALER;

} else if (YOU['score'] > 21 && DEALER['score'] > 21) {
    console.log('You drew');

}

console.log('Winner is', winner);
}
function showResult(winner) {
    let message, messageColor;
    
    if (winner === YOU) {
    message = 'You won';
    messageColor = 'green';
    winSound.play();
    


} else if (winner === DEALER) {
    message = 'You lost';
    messageColor = 'red';
    lossSound.play();

} else {
    message = 'You drew';
    messageColor = 'black';
}

document.querySelector('#blackjack-result').textContent = message;
document.querySelector('#blackjack-result').style.color = messageColor;



}
function blackjackDeal() {

    
    showResult(computeWinner());
    let yourImages = document.querySelector('#your-box').querySelectorAll('img');
    let dealerImages = document.querySelector('#dealer-box').querySelectorAll('img');
    

    for (i=0; i < yourImages.length; i++) {
        yourImages[i].remove();
    }


    for (i=0; i < dealerImages.length; i++) {
        dealerImages[i].remove();
    }

YOU['score'] = 0;
DEALER['score'] = 0;

document.querySelector('#your-blackjack-result').textContent = 0;
document.querySelector('#your-blackjack-result').style.color = 'white';

document.querySelector('#dealer-blackjack-result').textContent = 0;
document.querySelector('#dealer-blackjack-result').style.color = 'white';
}
我如何将其放置在“交易”按钮功能中:

function computeWinner() {
    let winner;

if (YOU['score'] <= 21) {
if (YOU['score'] > DEALER['score'] || (DEALER)['score'] > 21) {
console.log('You won');
winner = YOU;

} else if (YOU['score'] < DEALER['score']) {
    console.log('You lost');
    winner = DEALER;

} else if (YOU['score'] === DEALER['score']) {
    console.log('You drew');
}

} else if (YOU['score'] > 21 && DEALER['score'] <= 21) {
    console.log('You lost');
    winner = DEALER;

} else if (YOU['score'] > 21 && DEALER['score'] > 21) {
    console.log('You drew');

}

console.log('Winner is', winner);
}
function showResult(winner) {
    let message, messageColor;
    
    if (winner === YOU) {
    message = 'You won';
    messageColor = 'green';
    winSound.play();
    


} else if (winner === DEALER) {
    message = 'You lost';
    messageColor = 'red';
    lossSound.play();

} else {
    message = 'You drew';
    messageColor = 'black';
}

document.querySelector('#blackjack-result').textContent = message;
document.querySelector('#blackjack-result').style.color = messageColor;



}
function blackjackDeal() {

    
    showResult(computeWinner());
    let yourImages = document.querySelector('#your-box').querySelectorAll('img');
    let dealerImages = document.querySelector('#dealer-box').querySelectorAll('img');
    

    for (i=0; i < yourImages.length; i++) {
        yourImages[i].remove();
    }


    for (i=0; i < dealerImages.length; i++) {
        dealerImages[i].remove();
    }

YOU['score'] = 0;
DEALER['score'] = 0;

document.querySelector('#your-blackjack-result').textContent = 0;
document.querySelector('#your-blackjack-result').style.color = 'white';

document.querySelector('#dealer-blackjack-result').textContent = 0;
document.querySelector('#dealer-blackjack-result').style.color = 'white';
}

只需在此处查看代码,但您似乎没有从
computeWinner()返回任何内容。我像这样添加了一个返回:
returnwinner。看看这是否是您的预期输出

//挑战5:21点
让blackjackGame={
'庄家':{'scoreSpan':'#庄家21点结果','div':'#庄家盒子','score':0},
'you':{'scoreSpan':'#你的21点成绩,'div':'#你的盒子,'score':0},
‘卡片’:[‘2’、‘3’、‘4’、‘5’、‘6’、‘7’、‘8’、‘9’、‘10’、‘K’、‘J’、‘Q’、‘A’],
‘cardsMap’:{'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9,'10':10,'K':10,'J':10,'Q':10,'A':[1,11]}
};
const YOU=blackjackGame['YOU']
const DEALER=blackjackGame['DEALER']
const hitSound=新音频('static/sounds/swish.m4a');
const winSound=新音频('static/sounds/cash.mp3');
const lossound=新音频('static/sounds/aww.mp3');
document.querySelector(“#21点点击按钮”).addEventListener('click',21点点击);
document.querySelector(“#21点支架按钮”).addEventListener('click',DealLogic);
document.querySelector(“#21点交易按钮”).addEventListener('click',blackjackDeal');
函数blackjackHit(){
让卡片=随机卡片();
展示卡(卡片,你);
更新存储(卡,你);
showScore(你);}
函数卡(){
让randomIndex=Math.floor(Math.random()*13);
返回blackjackGame['cards'][randomIndex];
}
功能展示卡(卡、activePlayer){
如果(activePlayer['score']21){
console.log(“您赢了”);
赢家=你;
}否则,如果(您['score']<经销商['score']){
log(“您丢失了”);
赢家=经销商;
}否则如果(您['score']==经销商['score']){
console.log('youdraw');
}
}如果(您['score']>21和经销商['score']21和经销商['score']>21){
console.log('youdraw');
}
返回赢家;
}
功能显示结果(优胜者){
console.log('Winner is',Winner);
让消息,消息颜色;
如果(获胜者==你){
消息='你赢了';
messageColor='绿色';
winSound.play();
}否则如果(赢家===经销商){
消息='你输了';
messageColor='红色';
lossSound.play();
}否则{
消息='你画';
messageColor='黑色';
}
document.querySelector(“#21点结果”).textContent=message;
document.querySelector(“#21点结果”).style.color=messageColor;
}
.flex-blackjack-row-1、.flex-blackjack-row-2
{
显示器:flex;
边框:1px纯黑;
填充:10px;
柔性包装:包装;
弯曲方向:行;
证明内容:周围的空间;
颜色:#ffffff;
背景:url('https://image.freepik.com/free-vector/poker-table-background-green-color_47243-1068.jpg“)中心;}
.flex-blackjack-row-3{
显示器:flex;
边框:1px纯黑;
填充:10px;
柔性包装:包装;
弯曲方向:行;
证明内容:周围的空间;
}
.flex-blackjack-row-1分区{
边框:1px纯黑;
填充:10px;
高度:350px;
文本对齐:居中;
弹性:1;
}
.flex-blackjack-row-1 img{
宽度:25%;
填充:10px;
}
.flex-blackjack-row-2按钮{
边框:1px纯黑;
填充:10px;
}
.flex-blackjack-row-2分区{
边框:1px纯黑;
填充:10px;
}
表,th,td{
填充物:5px;
边框:1px纯黑;
}
.flex-blackjack-row-2{
显示器:flex;
边框:1px纯黑;
填充:10px;
柔性包装:包装;
弯曲方向:行;
证明内容:周围的空间;
}

21点挑战赛
我们来玩吧
你:0
经销商:0
打
站
处理
获胜
损失
绘制
0
0
0

你是一个传奇人物。我希望你成为亿万富翁。非常感谢。