js关于字符串转数字及数字保留位数的控制
1.parseInt()和parseFloat()两个转换函数,将字符串转换成相应的数字。
  1.parseInt()
    parseInt进⾏转换时,将字符串转成相应的整数。浮点数以后的数字都不要了。
    parseInt("1234blue");  //returns  1234
    parseInt("22.5");  //returns  22
    parseInt("blue");  //returns  NaN
    另外parseInt转换时是包含有基模式的,按照指定的转换进制进⾏相应的整数转换的,基数是由第⼆个参数传⼊的。
    parseInt("AF",  16);  //returns  175 ---16进制
    parseInt("10",  2);  //returns  2 ---------2进制
    parseInt("10",  8);  //returns  8 ---------8进制
    parseInt("10",  10);  //returns  10 ------10进制
js以6结尾的数字表达式    需要注意的是,如过字符串的第⼀个字符时0,则最好传⼊指定的基数,不然会意外的转成⼋进制整数。
    parseInt("010");  //returns  8
    parseInt("010",  8);  //returns  8
    parseInt("010",  10);  //returns  10
  2.parseFloat()
    parseFloat()⽅法与parseInt()⽅法的处理⽅式相似。
    使⽤parseFloat()⽅法的另⼀不同之处在于,字符串必须以⼗进制形式表⽰浮点数,parseFloat()没有基模式。
    下⾯是使⽤parseFloat()⽅法的⽰例:
    parseFloat("1234blue");  //returns  1234.0
    parseFloat("0xA");  //returns  NaN
    parseFloat("22.5");  //returns  22.5
    parseFloat("22.34.5");  //returns  22.34
    parseFloat("0908");  //returns  908
    parseFloat("blue");  //returns  NaN
2.利⽤js变量弱类型转换
  即js在执⾏数字运算的时候,除+以外的符号,在进⾏运算时,如果参与运算的数字是字符的形式,js会⾃动将其转成数字。
  举个⼩例⼦,例⼦中采⽤数字与0的减号运算,⾃动将字符串转成数字。
    var  str= '012.345 ';
    var  x  =  str-0;
    x  =  x*1;
  上例利⽤了js的弱类型的特点,只进⾏了算术运算,实现了字符串到数字的类型转换,不过这个⽅法还是不推荐的
  同时,也可以反过来使⽤,将数字转成字符串,数字在与字符进⾏+号运算时,执⾏的是字符串拼接,会将数字转成字符串进⾏拼接。    例如
    var num=11225;
    var str=num+‘’;
3.在对含有⼩数的数据进⾏处理的时候,往往需要保留指定的⼩数位数。针对保留⼀定位数的⼩数的⽅法有很多种。以下以保留两位⼩数列举⼏种。
  1.⽐较新的⽅法toFixed,含有四舍五⼊的运算(IE 5.5+才⽀持)。
    ⽤法:Fixed(2)  //2.45
       Fixed(2) //2.45
  2.利⽤下取正,按照指定位数转成整数,再转回去,不包含四舍五⼊。
    Math.floor(15.7784514000 * 100)/100 //15.77  注:如果需要此⽅法实现四舍五⼊,配合上取整,和⼀定的逻辑进⾏实现。
  3.另外⼏个对⼩数进⾏取整的API。
    parseInt();  //丢弃⼩数部分,取整数部分,相当于下取整,Math.floor();
    il(5/2);    //向上取整,⼩数只要存在,就整数部分+1;
    und(5/2);  //四舍五⼊取整。
    Math.floor(5/2);  //向下取整,⼩数直接去掉,⼩数部分⽆论多⼤,整数部分都不+1。
  4.另外还可以通过字符串控制,正则表达式匹配进⾏保留位数的控制,⽅法⽐较多,⽐较灵活。这⾥不再总结。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。