怎么判断输入的是不是数字?

来源:5-6 编程练习

__正正经经先生4337661

2016-11-04 11:29

怎么判断输入的是不是数字?不是数字能报错

写回答 关注

4回答

  • weibo_最_逍遥_04343500
    2016-11-04 11:52:26
    已采纳

    typeof(那个输入的东西);

    __正正经经...

    在函数用if中怎么写这个代码?

    2016-11-04 14:48:44

    共 1 条回复 >

  • 慕粉3912077
    2016-11-04 16:25:52

    <!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>


    __正正经经...

    谢谢!

    2016-11-04 16:33:14

    共 2 条回复 >

  • 慕粉4259319
    2016-11-04 15:21:36

    var a='a';

    a=a*1;

    console.log(isNaN(a));//true

    var b='1';

    b=b*1;

    console.log(isNaN(b));//false

    比如说一个输入框,你输入了一个东西,然后点击一个button,这个时候判断的输入的是不是数字肯定不能直接判断,因为你输入进去取出来的都是string,这个时候你需要乘以1,获取这个乘以1的值,用isNaN进行判断,如果你输入的不是数字判断结果都是true,输入的是数字判断结果都是false;

    __正正经经... 回复慕粉4259...

    哦哦,明白了

    2016-11-04 17:37:56

    共 5 条回复 >

  • 慕粉3912077
    2016-11-04 12:00:46

    if(isNaN(otext.value) === true)    

       文本.innerHTML="输入的不是数字"    


    __正正经经...

    你这个理解起来有点复杂,我看得有点晕,能不能举个例子呢?

    2016-11-04 14:40:38

    共 2 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题