在do while语句中有两个条件
Have two conditions in a do while statement
我试图在do ... while
语句的while
部分中使用两个条件。
以下代码有效:
do {
var longitud = parseInt(prompt("increase longitude of array"));
} while (isNaN(longitud));
以下也适用:
do {
var longitud = parseInt(prompt("increase longitude of array"));
} while (longitud < 2);
然而,当我想将两者合并时,它不起作用:
do {
var longitud = parseInt(prompt("increase longitude of array"));
} while (longitud < 2 && isNaN(longitud));
问题不在于括号;我已经测试了所有可能的组合,但没有任何结果
那么,我如何在同一时间内对两种表达进行分组呢?
也许你真的想要一个"or"而不是"and"?(因此,将&&
替换为||
)。
经度不可能既小于2,又不是一个数字。因此,当或为true时,您可能希望继续循环。
您还需要反转这两者,如isNaN(longitud) || longitud < 2
中所示。如果经度不是一个数字,那么你需要先检查一下。
我相信问题的答案在while语句中。由于while语句将永远找不到longitud<2和isNAN。更改为此并尝试:
do{
var longitud = parseInt(prompt("ingrese longitud del array"));
}while(isNaN(longitud) || longitud < 2);
在您的代码中,您正在检查经度是否同时<2和是NAN。您希望它在经度小于2或为NAN时循环。
编辑:添加了Katanas答案,解释说应该先检查isNAN。
相关文章:
- 基于两个条件退出While循环
- 如何使用jQuery绕过具有指定类和两个条件的元素的函数
- 在if语句中检查这两个条件,即使第一个条件为false
- 执行Jquery函数()的两个条件
- 获取具有两个条件的所有文本框值
- if 语句 (jQuery) 中的两个条件
- 满足两个条件时的 jQuery 执行函数
- 两个条件 - 这将是第一个
- 具有两个条件的 while 循环仅检查一个
- 虽然循环多个条件不会同时检查这两个条件
- 如何检查悬停功能中的两个条件
- jQuery在click事件上执行这两个条件
- 如果满足两个条件,则获得加分
- 在do while语句中有两个条件
- 基于两个条件进行筛选
- angularJS过滤两个条件
- 如何启用/禁用提交按钮,仅当提供两个条件时:检查输入单选和填充输入文本
- jQuery Selectors删除满足两个条件的表行
- 两个条件合为一
- javascript中的两个条件