javascript - != 与 || 结合使用时,运算符在 while 循环条件下不起作用或者

标签 javascript

<分区>

我有一个基本的 do while 循环,我在其中执行提示的输入值,然后通过条件运行它。出于某种奇怪的原因,当我将 !== 与 || 一起使用时在相同的条件下它不起作用。我知道我可以为它添加额外的参数,以便与使用 isNaN 和其他逻辑运算符进行比较,但是为什么这不起作用是没有意义的,我想让这条路线起作用。

var number;
do {
    number = parseInt(prompt('Enter 1 or 2'));
}
while ((number !== 1) || (number !== 2));

如果我用一个表达式运行以下代码进行比较,它工作没有问题,但在前面的语句中它不喜欢有多个条件进行比较。

var number;
do {
    number = parseInt(prompt('Enter 1 or 2'));
}
while (number !== 1);

谢谢!

最佳答案

如果数字为 1,则 LHS 为假但不是 2,因此 RHS 为真且整体测试为真。

如果数字不为1,则LHS为真,整体测试为真。

你在那里需要 && 所以你说 如果数字不是 1 也不是 2

关于javascript - != 与 || 结合使用时,运算符在 while 循环条件下不起作用或者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37579674/

相关文章:

javascript - 识别以问号结尾的单词并在打字时在其周围放置跨度标签

javascript - 在左上角制作一个重新加载按钮

javascript - 如何从 DatePicker 获取日期(值)并将其分配给对象的属性?

javascript - 防止固定位置对象在特定位置随页面滚动

javascript - window.history.replaceState 中的 'data' 是什么

javascript - 如何使用网络音频 API/javascript 操作 DOM?

javascript - 将用户从输入重定向到 URL,存储在 cookie 中

java - JSP父/子参数操作

javascript - 当尝试仅填充对 Angular 线时,二维数组总是填充整个数组

javascript - 帮助我验证 url 是否应该接受 .me 域