Javascript 石头剪刀:分数不记录

Javascript 石头剪刀:分数不记录,javascript,Javascript,我已经为计算机的选择和玩家的可能选择创建了函数。然而,几个小时以来,我一直试图解决记分问题,因为它似乎不起作用。我已经设置了要求,并将全局函数playerScore和computerScore设置为0,但每次调用gamescore函数时,出现的消息都是“平局”,因为出于某种原因,这两个分数的值始终被认为是0 你知道为什么会这样吗?我在网上做了大量的搜索,但没有结果。我还是一个初学者,所以我特意使用console.log,而不是innerHTML或任何html/css样式/按钮。computerP

我已经为计算机的选择和玩家的可能选择创建了函数。然而,几个小时以来,我一直试图解决记分问题,因为它似乎不起作用。我已经设置了要求,并将全局函数playerScore和computerScore设置为0,但每次调用gamescore函数时,出现的消息都是“平局”,因为出于某种原因,这两个分数的值始终被认为是0

你知道为什么会这样吗?我在网上做了大量的搜索,但没有结果。我还是一个初学者,所以我特意使用console.log,而不是innerHTML或任何html/css样式/按钮。computerPlay()函数会记录在控制台上,每次刷新“上线”时,它都会给出一个随机选择,以便正常工作。对于第二个函数,我还不知道循环,所以我通过控制台日志调用了它5次,以查看结果。我还提出了具体的玩家选择参数,以使字符串“你赢了,你输了,再抽”因为如果我没有,在所有5次中,返回是未定义的,而不是这三个字符串/返回中的一个。如果你刷新go live,你会看到选项在随机变化,但根据5轮后的得分,应该给出的最后一句话总是一样的

函数computerPlay(){
let gameWords=[“石头”、“布”、“剪刀”];
让randomWord=gameWords[Math.floor(Math.random()*gameWords.length)];
返回随机字;
};
console.log(computerPlay());
让playerScore=0
让计算机得分=0
设为0
功能playRound(玩家选择、计算机选择){
playerSelection=playerSelection.toLowerCase();
如果(计算机选择==“岩石”){
如果(玩家选择==“摇滚”){
返回“再次抽签”
吸引++
}else if(playerSelection==“纸张”){
return“你赢了!”
playerScore++;
}否则如果(玩家选择==“剪刀”){
返回“你输了!”
计算机评分++
};
};
如果(计算机选择==“纸张”){
如果(玩家选择==“纸张”){
返回“再次抽签”
吸引++
}否则如果(玩家选择==“摇滚”){
return“你输了…”
计算机评分++
}否则如果(玩家选择==“剪刀”){
return“你赢了!”
球员核心++
};
};
如果(计算机选择==“剪刀”){
如果(玩家选择==“剪刀”){
返回“再次抽签”
吸引++
}else if(playerSelection==“纸张”){
return“你输了…”
计算机评分++
}否则如果(玩家选择==“摇滚”){
返回“你赢了”
球员核心++
};
};
console.log(playerScore);
};
const computerSelection=computerPlay();
console.log(playRound(“RoCk”,计算机选择));
控制台日志(playRound(“剪刀”,计算机选择));
控制台日志(playRound(“纸”,计算机选择));
控制台日志(playRound(“纸”,计算机选择));
控制台日志(playRound(“纸”,计算机选择));
函数gameScore(){
如果(playerScore>computerScore){
return“你赢了比赛!”;
}否则如果(playerScorelog(gameScore())您的代码返回并增加计数器:

return "Draw again."
draws++

返回时,不会调用计数器递增。

返回语句后的任何内容都不会作为@Kazys answerWow执行,我不知道,我不敢相信这就是错误所在。现在可以了,非常感谢你的评论!