怎么判断输入的是不是数字?
怎么判断输入的是不是数字?不是数字能报错
怎么判断输入的是不是数字?不是数字能报错
2016-11-04
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>返回值函数</title>
<script type="text/javascript">
var arr=['as',100,'xx'-6,'100px']
document.write("1.数组中是纯数字的有:") //100
for(var i=0 ; i<arr.length ;i++)
{
//isNaN()很特别如果你是纯数字会判断为false;其他就为true;
if(isNaN(arr[i])===false)
{ document.write(arr[i]) }
}
document.write("</br>"+"2.数组中不是纯数字的有:") //'as','xx'-6,'100px'
for(var n = 0 ; n < arr.length ;n++)
{
//当 isNaN()判断出 你不是纯数字的同时又属于数字类型的时候(就是含有数字的字符串),输出值为NaN
if(isNaN(arr[n]) === true)
{ document.write(arr[n]+",") }
}
document.write("</br>"+"3.数组中是纯数字的有:") //100
for(var p=0 ; p<arr.length ;p++)
{
//parseInt()用于强转为数字类型,比如parseInt('100px')=100 ;parseInt('560ss')=560
if(parseInt(arr[p]) === arr[p])
{ document.write(arr[p]) }
}
//转换条件自己推吧
console.log("parseInt('100px')="+parseInt('100px'))
console.log("parseInt('a')="+parseInt('a'))
console.log("parseInt('10a10')="+parseInt('10a10'))
console.log("parseInt('a10')="+parseInt('a10'))
document.write("</br>"+"4.数组中属于数字类型的有:")//100,'xx'-6
for(var j = 0 ; j < arr.length ;j++)
{
//typeof用于判断字符串类型
if(typeof arr[j] === "number")
{ document.write(arr[j]+",") }
//还搞懂isNaN()就对比一下1,2,4的关系把
}
</script>
</head>
<body>
</body>
</html>
举报