首页 > 解决方案 > 未捕获的 SyntaxError:意外的标记 'var'

问题描述

我正在做这个练习,由于某种原因,我不断收到语法错误,当我将数字放入游戏时,它还显示“未捕获的 ReferenceError:检查未定义”我不确定我在哪里出错了。在这里感谢任何帮助,因为我是学习 javascript 的初学者。提前致谢。

这是我正在尝试创建游戏的代码笔:

https://codepen.io/Anozie/pen/qBOwBPq

以下是那些不想点击链接的人的代码和说明:

/* 说明:您将创建一个热游戏或冷游戏。游戏将从用户那里进行猜测(1 到 20 之间的数字),然后检查该猜测是否与 1 到 20 之间的随机生成的数字匹配。如果猜测与随机数匹配,则提醒用户他们中奖了并重置游戏。如果它很接近,请提醒他们它们很热,如果没有,请再试一次。用户应该猜测直到他们获胜,每次猜测后,如果它更接近,更温暖,如果它更远,更冷,则提醒他们。HTML 已为您提供。您只需要编写 javascript 部分。*/

//variables
var guess, answer, diffGuess;

var answer = 20;
var guess = 
var diffGuess = answer - guess;
function submitguess();
document.queryselector(".guessInput").addEventListener('click', submit);
document.queryselector("#guessInput").textcontent = guess;

if (guess === answer){
console.log('You got it right');  
  
}else if (diffGuess >= 1 && diffGuess <= 5){
console.log('You are cold');  
  
}else if (diffGuess >= 6 && diffGuess <= 10){
console.log('You are colder');  
  
}else if (diffGuess >= 11 && diffGuess <= 15){
console.log('You are lukewarm');  
  
}else if (diffGuess >= 16 && diffGuess <= 19){
console.log('You are really warm');  
  
};

这是HTML

<h2>Hot or Cold Game</h2>
<p>I've picked a random number between 1 and 20. Try to guess the number and I will tell you if you're getting hotter or colder!</p>
<form> 
  <input type="text" class="guess" >
  <input type="submit" value="Submit guess" class="guessInput" onclick="return check()">
</form>

标签: javascript

解决方案


我就是这样做的。

HTML 代码

<h2>Hot or Cold Game</h2>
<p>I've picked a random number between 1 and 20. Try to guess the number and I will tell you if you're getting hotter or colder!</p>
<form> 
  <input id="guess" type="number" class="guess" >
  <input type="submit" value="Submit guess" class="guessInput" id="btn-submit" >
</form>

JS代码

var answer = 20;

function check(){
  var guess = document.getElementById("guess").value;
  guess = Number(guess);
  var diffGuess = Math.abs(answer - guess);
  if (guess === answer){
    console.log('You got it right');  
  }else if (diffGuess >= 1 && diffGuess <= 5){
    console.log('You are cold');  
  }else if (diffGuess >= 6 && diffGuess <= 10){
    console.log('You are colder');  
  }else if (diffGuess >= 11 && diffGuess <= 15){
    console.log('You are lukewarm');  
  }else if (diffGuess >= 16 && diffGuess <= 19){
  console.log('You are really warm');
  }
}

document.getElementById("btn-submit").addEventListener("click", function(event){
  event.preventDefault();
  check();
});

编辑 :- 您可以使用 Switch 语句代替一系列 if-else 条件,以获得更好的清晰度。


推荐阅读