美文网首页
javascript中parseint和number的区别

javascript中parseint和number的区别

作者: 小豌豆书吧 | 来源:发表于2017-10-30 19:17 被阅读84次

    首先,解释一下定义的区别:

    • parseInt将字符串(String)类型转为整数类型。
    • Number() 函数把对象(Object)的值转换为数字。

    在这里可以看出parseInt得到的结果是整数或者NaN,而Number得到的是数字(整数,小数等)或者NaN;

    --------@1@----------

    1.parseInt

    语法

    parseInt(string, radix)
    
    parseInt参数.gif

    返回值

    如果参数是 Date 对象,Number() 返回从 1970 年 1 月 1 日至今的毫秒数。

    如果对象的值无法转换为数字,那么 Number() 函数返回 NaN。
    --------@2@----------

    2.Number

    语法

    Number(object)
    
    Number参数.gif

    返回值

    如果参数是 Date 对象,Number() 返回从 1970 年 1 月 1 日至今的毫秒数。

    如果对象的值无法转换为数字,那么 Number() 函数返回 NaN。

    3. 下面演示区别

    <script type="text/javascript">
    
      var test1= new Boolean(true);
      var test2= new Boolean(false);
      var test3= new Date();
      var test4= new String("999");
      var test5= new String("999 888");
      var test6= new String("08");
      var test7= new String("3.4.5");
      
      //Number() 函数把对象的值转换为数字。
      document.write(Number(test1)+ "<br />"); //1
      document.write(Number(test2)+ "<br />");  //0
      document.write(Number(test3)+ "<br />"); 
      document.write(Number(test4)+ "<br />");  //999
      document.write(Number(test5)+ "<br />");  //NaN
      document.write(Number(test6)+ "<br />");  //8
      document.write(Number(test7)+ "<br />");  //NaN
      
      
      // parseInt() 函数可解析一个字符串,并返回一个整数。
      document.write("-------------------------下面是parseInt"+ "<br />");
      
      document.write(parseInt(test1)+ "<br />"); //NaN 
      document.write(parseInt(test2)+ "<br />"); //NaN
      document.write(parseInt(test3)+ "<br />"); //NaN
      document.write(parseInt(test4)+ "<br />"); //999
      document.write(parseInt(test5)+ "<br />"); //999
      document.write(parseInt(test6)+ "<br />"); //8
      document.write(parseInt(test7)+ "<br />"); //3
    
      console.log(parseInt("10"));     //返回 10
      console.log(parseInt("19",10));    //返回 19 (10+9)
      console.log(parseInt("11",2));   //返回 3 (2+1)
      console.log(parseInt("17",8));   //返回 15 (8+7)
      console.log(parseInt("1f",16));    //返回 31 (16+15)
      console.log(parseInt("010"));      //未定:返回 10 或 8
    </script>
    

    相关文章

      网友评论

          本文标题:javascript中parseint和number的区别

          本文链接:https://www.haomeiwen.com/subject/uismpxtx.html