var answer = prompt("are we there yet")
while(answer.indexOf("yes") === -1 && answer.indexOf("yeah") === -1 ){
var answer = prompt("are we there yet")
}
alert("yay we made it");
&安培;&安培;当这两个部分都是真的时就可以工作,在这种情况下,如果我们写的是,或者是的,它会起作用,如果我们在它工作的时候只写了“是”,那就是" false"因为我们没有写同意,是的,在同一个提示中。
显然,我错了。为什么当其中一个只需要是真的时,OR不工作,我只需要写是或者是为了工作。答案 0 :(得分:0)
当你在语句中写下
时,逻辑没有什么不妥while(answer.indexOf("yes") === -1 && answer.indexOf("yeah") === -1 )
这里当条件内部为真时执行它的主体
while(*true*) => do something
当你在提示中键入例如yes时,将false视为条件因为
(true && false) => false
这意味着虽然不再执行它的身体。
当你写||而不是&&
(true || false) => true
所以while语句继续执行body
所以写代码是
while(answer.indexOf("yes") !== -1 || answer.indexOf("yeah") !== -1)