2013-01-22 45 views
3

我是一名初学者,使用Code Academy学习,我正在尝试用JavaScript编写一个简单的游戏,以增强我的理解力。我无法破译为什么我的前几行代码无法正常工作。这应该是显而易见的,但是确认命令根本不起作用。JavaScript初学者:确认/代码

下面的代码:

var classChoice=prompt("You need to choose a class. Will you play as a wizard or as a warrior?").toLowerCase; 

if (classChoice==="wizard"){ 
    confirm("You have chosen wizard. Is this correct? (yes or no)"); 
}else if (classChoice==="warrior"){ 
    confirm("You have chosen warrior. Is this correct?"); 
} 

有人对此有何评论?

+0

约瑟夫指出语法错误(下同),但还请注意,你是不是目前使用confirm()的返回值做任何事情 - 这不是语法错误,但确实意味着您的代码不起作用。另外,标准的confirm()提示总是有OK和Cancel按钮(你不能将它们改为Yes和No),所以你应该用一种对于用户来说用OK或Cancel来回答的方式来说出你的确认信息。 – nnnnnn

回答

6

toLowerCase是您必须致电的功能:.toLowerCase()


注:,当他们进入比你检查的2以外的值时会发生什么......?所有功能

1

100%需要用(),否则,您的浏览器会像对待一个变量

3

在你的代码中,.toLowerCase而正确地写在驼峰结束,没有必要在括号()其名称调用结束。所以,基本上没有括号,你只是试图提供函数的内容而不是实际调用它。

此外,最好不要信任用户正确输入必要的信息,至少不是100%的时间。因此,您为什么试图首先使用.toLowerCase()函数---以减少人为错误的机会。

因此,在其他的答案中的一个暗示,你应该有一个else块,像这样:

else { 
    // Handle input that does not match either choice 
}