首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript数验证

问JavaScript数验证
EN

Stack Overflow用户
提问于 2015-02-21 13:21:26
回答 3查看 100关注 0票数 0

我试图验证JS中的一个数字。我有一个while循环,它检查数字在一个范围内,并且它是一个数字。循环可以检查它是否在范围内,但不能检查数字是否有效(即不是NaN)。我已经尝试了int和float,但两者都没有工作。

代码:

代码语言:javascript
复制
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);
    };

谢谢你的帮助:抱歉,如果这看起来很简单的话!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-02-21 13:30:09

真是一个符号,而不是一个字符串。你有“真”而不是“真的”。尝尝这个。

代码语言:javascript
复制
var midday = 'asdf';
if (isNaN(midday) || 
midday >= 50) {
alert('isNan == true or >= 50');
}
else {
alert('none is true');
}
票数 0
EN

Stack Overflow用户

发布于 2015-02-21 13:27:10

isNaN方法返回布尔值true/false。并将其与字符串值true进行比较。字符串值true不等于布尔true。你可以用

代码语言:javascript
复制
if (isNaN(midday) == true || ...)

或更简单:

代码语言:javascript
复制
if (isNaN(midday) || ... )
票数 0
EN

Stack Overflow用户

发布于 2015-02-21 13:32:41

isNan返回一个布尔值。你不需要检查这是不是真的。

代码语言:javascript
复制
var midday = prompt("Enter number: ");
if (isNaN(midday)){
        alert("Not a number")
}
else { alert('Your number is ' + midday); }

您可以在这里检查:http://jsfiddle.net/ (我更改了一段时间,因为我不喜欢while循环,您当然可以为自己的目的更改:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28646265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档