我正在学习编写javascript代码,并编写了这段代码
var userAnswer = prompt("are you feeling lucky, punk?");
if (userAnswer === yes)
{
console.log("Batman hits you very hard. It's Batman and you're you! Of course Batman wins!");
}
else
{
console.log("You did not say yes to feeling lucky. Good choice! You are a winner in the game of not getting beaten up by Batman.");
}
但是当我跑的时候,我得到了 ReferenceError:yes未定义。
答案 0 :(得分:1)
如果未将yes
括在引号中(即字符串文字),JavaScript会查找名为yes
的变量。您尚未定义名为yes
的变量,因此会引发错误。
添加引号,以确定userAnswer
是否包含字符串yes
:
if (userAnswer === 'yes')
如果您想接受不同的案例(例如Yes
和YES
),您可以使用.toLowerCase()
if (userAnswer.toLowerCase() === 'yes')
答案 1 :(得分:0)
您正在尝试将变量 userAnswer
与另一个变量 yes
进行比较。问题是您尚未定义yes
。我相信您正在尝试将userAnswer
与字符串文字进行比较“是”。
因此,如果您将userAnswer === yes
更改为userAnswer === "yes"
,则应该执行您想要的操作。