zoukankan      html  css  js  c++  java
  • javascript的数值转换 number()详解

    ---恢复内容开始---

     number() parseInt() parseFloat()这三个函都可以把数非数值转换为数值,我们看看他们的区别在哪里

    一 Number()

     转型函数Number()是无所不能的,他可以把任何形式的数据类型进行转型,其规则如下

    1.如果是布尔值,true和false将分别转换为1和0;

    2.如果是数字,只是简单的传入和返回;

    3.如果是null 则转化为0.;

    4.如果是undefined则返回NaN;

    5.如果是字符串-----规则就更详细了:

    1.如果字符串中只包含数字,(包括前面的正好和负号)则会转换为十进制,比如 “1”变成1 “,123”变成12,而“0123”则变成123注意前面的的0被忽略

    2.字符串如果是空则转化为0

    3.如果字符串中有上述格式之外的字符,则转为NaN;

    4.如果是对象则调用valueOf()的方法,依照上述的规则进行转换

    代码

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>VIDEO</title>
     6 </head>
     7 <body>
     8 <script>
     9     var num1=Number("");
    10      alert(num1);//转化为0
    11 
    12      //code 2
    13      var num2=Number("hello");
    14      alert(num2);//转化为NaN
    15      //code 3
    16      var num3=Number("0000222");
    17      alert(num3);//转化为222
    18      //code 4
    19       var num4=Number(true);
    20      alert(num4);//转化1
    21 
    22 
    23 
    24 
    25 
    26 
    27 </script>
    28     
    29 </body>
    30 </html>

    由于Number()复杂而且不合理,处理整数的时候parseInt()更常用。parseInt()函数在转换字符串时,会忽略字符串前面的空格,知道找到第一个非空格字符。

    如果第一个字符不是数字或者负号,parseInt() 就会返回NaN,同样的,用parseInt() 转换空字符串也会返回NaN。

    如果第一个字符是数字字符,parseInt() 会继续解析第二个字符,直到解析完所有后续字符串或者遇到了一个非数字字符。

    parseInt()方法还有基模式,可以把二进制、八进制、十六进制或其他任何进制的字符串转换成整数。

    基是由parseInt()方法的第二个参数指定的,所以要解析十六进制的值,当然,对二进制、八进制,甚至十进制(默认模式),都可以这样调用parseInt()方法。

    var num1 = parseInt("AF",16);           //175
       var num2 = parseInt("AF");            //NaN
       var num4 = parseInt("sdasdad");         //NaN
    

      

     

  • 相关阅读:
    django orm 以列表作为筛选条件进行查询
    申请Let's Encrypt通配符HTTPS证书
    redis集群部署及踩过的坑
    MySQL的索引是什么?怎么优化?
    Session管理之超时设置和强制下线
    在MySQL中使用explain查询SQL的执行计划
    基于Docker搭建MySQL主从复制
    这些年一直记不住的 Java I/O
    高并发大容量NoSQL解决方案探索
    php 如何生成静态页
  • 原文地址:https://www.cnblogs.com/luotianyi/p/7642868.html
Copyright © 2011-2022 走看看