Javascript 用js和Can'创建简单的刽子手游戏;如果语句读取正确,则无法获取

Javascript 用js和Can'创建简单的刽子手游戏;如果语句读取正确,则无法获取,javascript,if-statement,Javascript,If Statement,在下面的代码中,如果玩家猜测某个字母不在所选的秘密单词中,我将无法获得要执行的代码。我已经设置好了,所以当点击提交按钮时,我们首先检查猜到的字母是否在拼图单词中,如果是字母被翻转,那么我试图说它是否在单词中,夺走玩家的生命。我尝试了几种方法,但无法让程序正确读取第二条if语句 submit.addEventListener('click', function(){ console.log("clicked"); usedLetters.innerHTML += playersLe

在下面的代码中,如果玩家猜测某个字母不在所选的秘密单词中,我将无法获得要执行的代码。我已经设置好了,所以当点击提交按钮时,我们首先检查猜到的字母是否在拼图单词中,如果是字母被翻转,那么我试图说它是否在单词中,夺走玩家的生命。我尝试了几种方法,但无法让程序正确读取第二条if语句

submit.addEventListener('click', function(){
    console.log("clicked");
    usedLetters.innerHTML += playersLetter.value + ' '

    for(i=0; i<checkWord.length; i++){
      console.log(wordLife)

      if(playersLetter.value == (checkWord[i])){
        console.log('in if#1')
        console.log(playersLetter.value)
        var answerLetter = document.getElementsByClassName('letter')[i]
        answerLetter.innerHTML = playersLetter.value
        wordLife--
      }
    }

  function scoreLetter(value){// To check if the letter is actually in the word
  for(let i = 0; i < checkWord.length; i++){
    if(value == (checkWord[i])){
      return true
    }else {
      return false
    }
  }
}
console.log('read function')

 if(scoreLetter(playersLetter.value) == false){
   console.log('in 2nd if')
   playerLife--

console.log(playerLife)
}    
})
submit.addEventListener('click',function(){
控制台日志(“单击”);
usedLetters.innerHTML+=playersLetter.value+''

对于(i=0;i您的scoreLetter函数是错误的,您只检查第一个字母,如果中的值不在第一个位置,则返回false。 尝试此…检查字母是否在数组中

 function scoreLetter(value){
      return (checkWord.indexOf(value) === -1) ? false : true;
  }

发布一个工作代码片段来演示您的问题。scoreLetter是在哪里定义的?它似乎在该函数中出错了。您是DaMan jonhid。这非常好。也感谢所有其他人。