我试图验证JS中的一个数字。我有一个while循环,它检查数字在一个范围内,并且它是一个数字。循环可以检查它是否在范围内,但不能检查数字是否有效(即不是NaN)。我已经尝试了int和float,但两者都没有工作。
代码:
while (isNaN(midday) == 'true' || midday >= 50){
//validate that the number is w/n an expected range (0-50)
alert("You entered an out out range or incorrect number")
var midday = prompt("Enter number: " + pn);
midday = parseFloat(midday);
};谢谢你的帮助:抱歉,如果这看起来很简单的话!
发布于 2015-02-21 13:30:09
真是一个符号,而不是一个字符串。你有“真”而不是“真的”。尝尝这个。
var midday = 'asdf';
if (isNaN(midday) ||
midday >= 50) {
alert('isNan == true or >= 50');
}
else {
alert('none is true');
}发布于 2015-02-21 13:27:10
isNaN方法返回布尔值true/false。并将其与字符串值true进行比较。字符串值true不等于布尔true。你可以用
if (isNaN(midday) == true || ...)或更简单:
if (isNaN(midday) || ... )发布于 2015-02-21 13:32:41
isNan返回一个布尔值。你不需要检查这是不是真的。
var midday = prompt("Enter number: ");
if (isNaN(midday)){
alert("Not a number")
}
else { alert('Your number is ' + midday); }您可以在这里检查:http://jsfiddle.net/ (我更改了一段时间,因为我不喜欢while循环,您当然可以为自己的目的更改:)
https://stackoverflow.com/questions/28646265
复制相似问题