我是一个学习Javascript的新手。在下面的教程中,我不理解
为什么值最初设置为null
如果输入的值是2,例如,程序如何知道显示“你是一个尴尬”而不是重新显示最初的问题“2 + 2的值是多少”?
当值!= 4时触发问题/提示,所以我希望回答2重新触发问题/提示,但程序会显示消息“你是一个尴尬”。
任何人都可以解释一下吗?
var value = null;
while (value != "4") {
value = prompt("You! What is the value of 2 + 2?", "");
if (value == "4")
alert("You must be a genius or something.");
else if (value == "3" || value == "5")
alert("Almost!");
else
alert("You're an embarrassment.");
}
答案 0 :(得分:2)
a)该值最初设置为null,以便当while循环检查以验证它应该启动时,循环将返回true。 I.E. value不等于“4”,它等于null。 您还可以将值设置为除4之外的任何值。
b)您在对话框中输入的值将是设置的值,因此,由于值不等于3,4或5,因此它将落入使用else的所有其他方案中。
答案 1 :(得分:1)
value != 4
是while
循环处理的条件。只要value
不等于(!=
)4,就会继续提示。
进入while循环后,可以输入一个数字。
然后检查数字(if-else if-else
)并在其下面行。如果输入的数字不是4,例如2,value
不等于4,则会提示您再次输入数字。
这将一直持续到您输入4。
我在代码示例中添加了一些注释(和大括号),希望它有助于澄清事情......
var value = null;
while (value != "4") {//While value is not 4 do the following code
value = prompt("You! What is the value of 2 + 2?", "");//Get a value from the user
if (value == "4"){//If value equals 4, then do the following
alert("You must be a genius or something.");
}//end of if block
else if (value == "3" || value == "5"){//If value is equal to 3 or 5 then d0
alert("Almost!");
}//end of else-if block
else{//If value is something we haven't explicitly checked for, then do this
alert("You're an embarrassment.");
}//end of else block
}//End of while loop
编辑 - 我对评论的回复太长了
这段代码的工作原理如下:
var value = null
创建一个名为value的变量并将其设置为null
while(value != 4){...whileblock...}
(忽略while循环中的代码)虽然value不等于4,但执行whileblock
代码
一旦我们进入while循环(这将发生,因为null
不等于4
),我们开始对其他代码进行操作
value = prompt("...");
要求用户输入内容
if(value=="4"){...ifblock...}
else if(value=="3" || value=="5"){...ifelseblock...}
else{...elseblock...}
此块的操作方式如果:如果value等于4,则执行ifblock
代码。如果我的值不等于4,则检查下一个组件if(value=="3"||value=="5")
。这就是说,如果我的值是3,或者我的值是5,那么请执行ifelseblock
中的代码。如果我们没有ifelseblock
,请转到下一个组件,即else
部分。也就是说,无论价值是多少都无关紧要,我们都做到了这一点,所以继续运行elseblock
。 (当然,用相应的代码替换每个*block
件)
现在它已经完成,while循环返回到顶部以查看是否应该继续执行whileblock
代码。因此它会检查值是否等于4.如果value等于4,它将不会再次运行循环。如果value不是4,它将全部运行,该代码再次运行,请求提示,进行比较并显示相应的警告框。
我希望所有这些都有助于清除它。
答案 2 :(得分:0)
如果你输入4,它会说“你必须是天才或什么的。”。如果你键入3或5,它会说“几乎!”还有别的什么会说“你是一个尴尬的人”