简体   繁体   English

Javascript随机字母游戏中的Computerguess保持不变

[英]Computerguess remains the same in Javascript Random Letter Game

I am trying to create a random letter game where the computer guesses a random letter and the user has to try and solve it. 我正在尝试创建一个随机字母游戏,其中计算机会猜测一个随机字母,用户必须尝试解决它。 I want the computer to save the guess for multiple turns, but chooses a new number upon each .keyup I want the letter to change upon the user guessing the correct letter, but it stays "x" regardless. 我希望计算机将猜测保存为多个回合,但是在每个.keyup上选择一个新数字,我希望字母在用户猜测正确字母时更改,但是无论如何它都保持为“ x”。 This is my first post and i'm new to coding so dont be jerks please. 这是我的第一篇文章,我是编码的新手,所以请不要混蛋。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>The Psychic Game</title>



</head>
<body>

<h1>The Psychic Game</h1>

<div id="game">
<p>Guess what letter I'm thinking of</p>

<p>Wins: </p>
<p>Losses: </p>
<p>Guesses: 9</p>
<p>Your Guess So far: </p>


  <script type="text/javascript">



 var options = ["a", "b", "c", "d", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]; 
var wins= 0;
var losses= 0;
var turns= 9;
var guess="";





document.onkeyup = function(event) {
var computerGuess = options[Math.floor(Math.random()*options.length)];

console.log(computerGuess);



var userguess = event.key;





if (userguess == computerGuess) {
  wins++;
  turns = 9; 
  guess = ""; 
}

else if(userguess !== computerGuess) {
 turns--;
 guess += userguess + ", ";}







  if (turns ==0) {
    losses++;
    turns= 9;
    guess="";



}




var html = "<p>Guess what letter I'm thinking of</p>" + 
  "<p>wins: " + wins + "</p>" +
  "<p>losses: " + losses + "</p>" +
  "<p>turns: " + turns + "</p>"+
  "<p>Your Guess So Far: " + guess + "</p>";

document.querySelector('#game').innerHTML = html;









}




  </script>

</body>
</html>

Working fiddle. 工作提琴。 https://jsfiddle.net/umn82x4b/ https://jsfiddle.net/umn82x4b/

Added initialization condition 添加了初始化条件

var options = ["a", "b", "c", "d", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]; 
var wins= 0;
var losses= 0;
var turns= 9;
var guess="";



var computerGuess;
var intialized=true;
document.onkeyup = function(event) {
debugger
if(intialized){
computerGuess = options[Math.floor(Math.random()*options.length)];
intialized=false;
}
alert(computerGuess);


var userguess = event.key;
if (userguess == computerGuess) {
computerGuess = options[Math.floor(Math.random()*options.length)];
  intialized=true;
  wins++;
  turns = 9; 
  guess = ""; 
}

else if(userguess !== computerGuess) {
 turns--;
 guess += userguess + ", ";}







  if (turns ==0) {
    losses++;
    turns= 9;
    guess="";



}




var html = "<p>Guess what letter I'm thinking of</p>" + 
  "<p>wins: " + wins + "</p>" +
  "<p>losses: " + losses + "</p>" +
  "<p>turns: " + turns + "</p>"+
  "<p>Your Guess So Far: " + guess + "</p>";

document.querySelector('#game').innerHTML = html;









}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM