猿问

将数组位置与提示进行比较(javascript)

我正在尝试将提示窗口的输入与数组中数组中正确答案的位置进行比较。


此函数将问题和可能的答案记录到控制台。然后它会记录正确的答案,但不会将输入识别为正确的,即。它总是会显示 else 语句。代码:


questionArray[randomQ].questionPrompt();

var currentQ = randomQ;   


Question.prototype.answerPrompt = function(){

  var tryQ = prompt("Enter number of the correct answer.");

    if (currentQ === tryQ){

      console.log('The correct answer is ' + this.answer)

    } else {

      console.log('Try again. ' + this.answer)

    }

   };

控制台日志。最后一行出现在输入 0 之后:


Question?

0) answer 0 - correct answer

1) answer 1

2) answer 2

Try again. 0

如果我使用


if (questionArray.answerArray[currentQ] === tryQ)

然后找到正确的数组项,并在 TypeError 中列为未定义。如何使用该数组项与提示答案进行比较?


扬帆大鱼
浏览 79回答 1
1回答

慕无忌1623718

prompt将始终返回一个字符串,因此它不会是===一个数字。先将提示结果转为数字。您可能还想将空字符串排除在默认为 0 之外。const guess = prompt("Enter number of the correct answer.");const tryQ = guess && Number(guess);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答