我正在尝试将提示窗口的输入与数组中数组中正确答案的位置进行比较。此函数将问题和可能的答案记录到控制台。然后它会记录正确的答案,但不会将输入识别为正确的,即。它总是会显示 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 answer1) answer 12) answer 2Try again. 0如果我使用if (questionArray.answerArray[currentQ] === tryQ)然后找到正确的数组项,并在 TypeError 中列为未定义。如何使用该数组项与提示答案进行比较?
1 回答
慕无忌1623718
TA贡献1744条经验 获得超4个赞
prompt将始终返回一个字符串,因此它不会是===一个数字。先将提示结果转为数字。
您可能还想将空字符串排除在默认为 0 之外。
const guess = prompt("Enter number of the correct answer.");
const tryQ = guess && Number(guess);
添加回答
举报
0/150
提交
取消