js判断输入的是否为数字

// 判断输入是否为数字
function isNumeric(n) {
    return !isNaN(parseFloat(n)) && isFinite(n);
}

js中字符串转换为数字:
parseInt()函数可解析一个字符串,并返回一个整数。
parseFloat()函数可解析一个字符串,并返回一个浮点数。

parseInt("10");			//返回 10
parseInt("19",10);		//返回 19 (10+9)
parseInt("11",2);		//返回 3 (2+1)
parseInt("17",8);		//返回 15 (8+7)
parseInt("1f",16);		//返回 31 (16+15)
parseInt("010");		//未定:返回 10 或 8
<script>
document.write(parseFloat("10")) 
document.write(parseFloat("10.00")) 
document.write(parseFloat("10.33")) 
document.write(parseFloat("34 45 66")) 
document.write(parseFloat(" 60 ")) 
document.write(parseFloat("40 years"))
document.write(parseFloat("He was 40"))
</script>

输出:

10
10
10.33
34
60
40
NaN

js中提供一个方法,判断是不是一个数字。
IsNaN()函数用于检查其参数是否是非数字值。
true 不是一个数字
false 是一个数字。

<script>
document.write(isNaN(123));
document.write(isNaN(-1.23));
document.write(isNaN(5-2));
document.write(isNaN(0));
document.write(isNaN("Hello"));
document.write(isNaN("2005/12/12"));
</script>

输出:

false
false
false
false
true
true

isFinite() 函数用于检查其参数是否是无穷大。
如果 number 是有限数字(或可转换为有限数字),那么返回 true。否则,如果 number 是 NaN(非数字),或者是正、负无穷大的数,则返回 false。

<script>
document.write(isFinite(123)+ "<br />")
document.write(isFinite(-1.23)+ "<br />")
document.write(isFinite(5-2)+ "<br />")
document.write(isFinite(0)+ "<br />")
document.write(isFinite("Hello")+ "<br />")
document.write(isFinite("2005/12/12")+ "<br />")
</script>

输出:

true
true
true
true
false
false

猜你喜欢

转载自blog.csdn.net/cf313995/article/details/83064777
今日推荐