代码运行良好,所有代码都很好,但是我对于为什么有AND语句而不是OR感到困惑。这两个条件不必都等于true ...只需一个条件。
var apple = prompt("we there?");
while (apple !== "yes" && apple !== "yeah") {
var apple = prompt("we thereeee?");
alert("welcome here");
答案 0 :(得分:4)
否,此条件表示如果apple的值不是yes或yeah,则该语句应运行。因为条件是!== (not equal)
因此,如果不是“是”或“是”,则该条件为真。
另一方面,如果存在或条件,则意味着如果苹果不是“是”或不是,那么条件为真。但是可以这样想,尽管apple的值不是yes
(因此第一部分为true),但是stil的值可能是yeah,这在这里并不期望
答案 1 :(得分:2)
在您的文字中,您描述的是while
循环中条件的否定。 while循环中的条件表示无效内容,而文本则表示有效内容。 while循环的条件是说“当它无效有效时:获取新的输入”
在布尔逻辑中,negation of a disjunction (an OR) is the conjunction (AND) of the negations。
因此while
条件也可以写为:
while ( !(apple === "yes" || apple == "yeah") ) {
...与您所描述的相对应,但等效。请注意其他否定!
(否)和否定比较(===
)。
答案 2 :(得分:1)
这是经验法则问题...如果存在不等于检查的条件,则使用OR意味着其中一个条件将始终为真...因此,我们需要AND而不是OR进行NOT EQUAL TO进行大于等于的检查一个条件...总是:)