我想让我的用户回答问题"你是男孩还是女孩?"选择其中一个并强迫他们选择其中一个。
我认为我正朝着正确的方向前进,但每当我运行我的代码时,如果选择第二个选项,它就会打嗝。
我做错了什么?
var gender = prompt("Are you a boy or a girl?").toLowerCase();
while (gender !== ("boy" || "girl")) {
gender = prompt("Please only respond with boy or girl. Now, are you a boy or a girl?");
}
答案 0 :(得分:1)
我个人喜欢
var gender = prompt("Are you a boy or a girl?").toLowerCase();
while (["boy", "girl"].indexOf(gender) == -1) {
gender = prompt("Please only respond with boy or girl. Now, are you a boy or a girl?");
}
答案 1 :(得分:0)
正确的条件是
while (gender !== 'boy' && gender !== 'girl'){
因为("boy" || "girl")
总是以" boy"结束,因此while
看起来像while(gender !== 'boy')
。在这种情况下,||
称为"默认"运算符,巧妙地使用逻辑OR。如果左侧的值是真实的,它将使用左侧值。否则,它将评估(因此"默认")右侧。