1. document.write(isNaN(123))//false
2. document.write(isNaN(-1.23))//false
3. document.write(isNaN(5-2))//false
4. document.write(isNaN(0))//false
5. document.write(isNaN("Hello"))//true
6. document.write(isNaN("2005/12/12"))//true
7. document.write(isNaN("6/2"))//true
8. document.write(isNaN("3"))//false
2、定义和用法:isNaN() 函数用于检查其参数是否是非数字值。
3、语法:isNaN(x) x 必需。要检测的值。
4、返回值:如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。
5、说明:isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。
6、如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。正因为如此,isNaN() 函数是必需的。
第一种方法,编写两个方法getIntegerTimes(),isPositiveIntegerTimes()判断两个数(包含小数),先获取倍数,再判断倍数是否为正整数,好处就是两个方法都可以作为通用方法调用.实现功能多.//获取两个数的倍数,返回倍数
function getIntegerTimes(arg1,arg2){
if(arg1<arg2){
var flag=arg1
arg1=arg2
arg2=arg1
}
var t1=0,t2=0,r1,r2
try{t1=arg1.toString().split(".")[1].length}catch(e){}
try{t2=arg2.toString().split(".")[1].length}catch(e){}
with(Math){
r1=Number(arg1.toString().replace(".",""))
r2=Number(arg2.toString().replace(".",""))
return (r1/r2)*pow(10,t2-t1)
}
//判断是否为正整数,返回true或false
function isPositiveIntegerTimes(arg) {
var num = arg.toString()
if (!(/(^[1-9]\d*$)/.test(num))) {
return false
}else {
return true
}
}
第二种方法,就是单一方法isPositiveIntegerTimes(),判断两个数(包含小数)是否整除
//判断两个数的是否为整数倍,返回true或者false
function isPositiveIntegerTimes(arg1,arg2){
if(arg1<arg2){
var flag=arg1
arg1=arg2
arg2=arg1
}
var t1=0,t2=0,r1,r2
try{t1=arg1.toString().split(".")[1].length}catch(e){}
try{t2=arg2.toString().split(".")[1].length}catch(e){}
with(Math){
r1=Number(arg1.toString().replace(".",""))
r2=Number(arg2.toString().replace(".",""))
var times= (r1/r2)*pow(10,t2-t1)
if (!(/(^[1-9]\d*$)/.test(times.toString()))) {
return false
}else {
return true
}
}
js有个函数 isNaN(val)//如果是数字则返回 false使用时候
if(!isNaN(val)){
alert("是数字")
}else{
alert("不是数字")
}
js的验证不安全 如果禁止浏览器JavaScript 很容易就跳过去验证了
要是模拟提交 ,更容易攻破
嘿嘿 jsp中一定要验证哟