在javascript中检查数字

时间:2013-07-02 07:02:36

标签: javascript

如果变量值为

,我想显示“有效”消息
  • 不是长度为10的数字
  • 一个空字符串(""

if(isNaN(num) && num !="" && num.length!=10)
{
    alert("invalid");
}
else
{
    alert("valid");
}

但是这段代码显示“长度不是10的数字”是有效的。但无论是数字还是数字,如果它的长度不是10,它应该是无效的。

2 个答案:

答案 0 :(得分:2)

您的条件放置在这里是错误的。

isNaN(num) && num !=""
here, for num=1234,isNaN is false(that means it is number), but the num!="" will give true resulting in Invalid alert. 

<强>解决方案&&替换为|| OR条件。

答案 1 :(得分:0)

你的意思是:

if(is_nan(num) && num !="" && num.length<10)
{
alert("invalid");
}
else
{
alert("valid");
}

否则,如果长度为<9>10,您将获得 false

在这种情况下,当 num 为非数字,nun-empty字符串且长度为&gt; = 10时,您会提醒valid