JavaScript判断是否是正确数值 isNaN
NaN在JavaScript中表示不是数字
JavaScript中isNaN函数方法是返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。
使用方法:
isNaN(numValue)
其中必选项 numvalue 参数为要检查是否为 NAN 的值。
如果值是 NaN,
那么 isNaN 函数返回 true ,否则返回 false 。 使用这个函数的典型情况是检查 parseInt 和 parseFloat
方法的返回值。还有一种办法,变量可以与它自身进行比较。 如果比较的结果不等,那么它就是 NaN 。 这是因为 NaN
是唯一与自身不等的值。
注意:NaN “Not a
Number”。出现这个数值比较少见,以至于我们可以不理它。当运算无法返回正确的数值时,就会返回“NaN”值。NaN
值非常特殊,因为它“不是数字”,所以任何数跟它都不相等,甚至 NaN 本身也不等于 NaN 。
isNaN是个函数,它计算一个参数,检查它是否为数值。
例:isNaN("A")返回true,isNaN("1")返回false
其它判断按钮是否数字方法:
javascript限制输入的只能是数字,判断event.keyCode的值,并将它限定只能为数字,如果不是数字,则返回错误,如果是数字,则继续。
我先介绍验证javascript是否是数字另一种方式,通过下面的函数来实现:
function isNumber(oNum)
{
if(!oNum) return false;
var strP=/^\d+(\.\d+)?$/;
if(!strP.test(oNum)) return false;
try{
if(parseFloat(oNum)!=oNum) return false;
}
catch(ex)
{
return false;
}
return true;
}
这段javascript代码很简洁,大家可以看下。
<script language=javascript>
function onlyNum()
{
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
//考虑小键盘上的数字键
event.returnvalue=false;
}
</script>
<input onkeydown="onlyNum();">
下面还有一种比较笨的方法,大家也可以看下,学习嘛
下次贴个用正则验证数字的
<script language="javascript">
function CheckMyForm()
{
var txt = myform.mytext.value;
if(checknumber(txt))
{
alert("只允许输入数字!");
return false;
}
return true;
}
function checknumber(String)
{
var Letters = "1234567890";
var i;
var c;
for( i = 0; i < String.length; i ++ )
{
c = String.charAt( i );
if (Letters.indexOf( c ) ==-1)
{
return true;
}
}
return false;
}
</script>
<body>
<form name="myform" onSubmit="return CheckMyForm()">
<input type="text" name="mytext">
<input type="submit" name="mysubmit">
</form>
</body>