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进制

    需要注意的是,如过字符串的第一个字符时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+才支持)。

    用法:2.453255.toFixed(2)  //2.45

       2.447088.toFixed(2) //2.45

  2.利用下取正,按照指定位数转成整数,再转回去,不包含四舍五入。

    Math.floor(15.7784514000 * 100)/100 //15.77   注:如果需要此方法实现四舍五入,配合上取整,和一定的逻辑进行实现。

  3.另外几个对小数进行取整的API。

    parseInt();  //丢弃小数部分,取整数部分,相当于下取整,Math.floor();

    Math.ceil(5/2);    //向上取整,小数只要存在,就整数部分+1;

    Math.round(5/2);   //四舍五入取整。

    Math.floor(5/2);   //向下取整,小数直接去掉,小数部分无论多大,整数部分都不+1。

  4.另外还可以通过字符串控制,正则表达式匹配进行保留位数的控制,方法比较多,比较灵活。这里不再总结。

js 关于字符串转数字及数字保留位数的控制的更多相关文章

  1. js判断字符串中是否有数字和字母

    var p = /[0-9]/; var b = p.test(string);//true,说明有数字var p = /[a-z]/i; var b = p.test(string);//true, ...

  2. js 获取字符串中所有的数字和汉字

    var re1 = /(\d{1,3})+(?:\.\d+)?/g var re2 = /[\u4e00-\u9fa5]{2,}/g var str="11我22们33两个"; v ...

  3. js字符串转换成数字与数字转换成字符串的实现方法

    转载:点击查看地址 js字符串转换成数字 将字符串转换成数字,得用到parseInt函数.parseInt(string) : 函数从string的开始解析,返回一个整数. 举例:parseInt(' ...

  4. js字符串转换成数字,数字转换成字符串

    转自网络,忘记出处了. js字符串转换成数字 将字符串转换成数字,得用到parseInt函数. parseInt(string) : 函数从string的开始解析,返回一个整数. 举例:parseIn ...

  5. js中字符串转换为数字

    js 字符串转化成数字的三种方法主要有 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后 ...

  6. js区分字符串和数字,有时候需要将字符串转换成数字

    js区分字符串和数字,有时候需要将字符串转换成数字 :parseInt

  7. js将字符串转变成数字

    方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把值转换成浮点数.只有 ...

  8. JS截取字符串中数字

    今天项目中需要在一个字符串中截取一个数字,然后数字参与运算.搜了一下,有好多好用的方式截取字符串. 1,使用parseInt() var str ="4500元"; var num ...

  9. js中字符串转数字的方法

    1.当字符串中是纯数字 例如:var s = '234'; /********** 字符串在运算操作中会被当做数字类型来处理 ***************/ s *= 1; /******* str ...

随机推荐

  1. 五款app原型设计工具对比

    五款app原型设计工具对比 Proto.io, Pixate, Origami, Framer & Form 本文由Panblack 翻译,原文作者 Tes Mat 我用五款“高保真”原型设计 ...

  2. 解析angularjs中的绑定策略

    一.首先回顾一下有哪些绑定策略? 看这个实在是有点抽象了,我们来看具体的实例分析吧! 二.简单的Demo实例 @绑定:传递一个字符串作为属性的值.比如 str : ‘@string’ 控制器中代码部分 ...

  3. 序列化Serializable

    public interface Serializable 类的序列化由实现java.io.Serializable接口的类启用. 不实现此接口的类将不会使任何状态序列化或反序列化. 可序列化类的所有 ...

  4. 30分钟LINQ教程 【转载】

    原文地址:http://www.cnblogs.com/liulun/archive/2013/02/26/2909985.html 在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有 ...

  5. CSS中的EM属性之弹性布局

    这篇教程将引导大家如何使用“em”来创建一个基本的弹性布局,从而学习其如何计算?又是如何使用“em”对层进行弹性扩展?又是如何扩展文本和图像等内容?下在我们就一起带着这些问题开始今天的“em”之行. ...

  6. 对 Canal (增量数据订阅与消费)的理解

    概述 canal是阿里巴巴旗下的一款开源项目,纯Java开发.基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了MySQL(也支持mariaDB). 起源:早期,阿里巴巴B2B公司 ...

  7. x64 分页机制——虚拟地址到物理地址寻址

    原博客:http://www.cnblogs.com/lanrenxinxin/p/4735027.html 详细的理论讲解都在上面 下面说的是通过windbg手动进行寻址,深入理解 x64: 实践: ...

  8. 2019年5月训练记录(更新ing)

    前言 \(ZJOI\)正式结束了. 但期中考试只考了年级\(216\),退役既视感... 于是就被抓回去补文化课了. 下半个学期可能要以文化课为主了吧! 但周三.周日应该还是会正常参加训练的,但其他时 ...

  9. Jupyter notebook 的一个问题

    Traceback (most recent call last): File , in get value = obj._trait_values[self.name] KeyError: 'all ...

  10. 四、IntelliJ IDEA 之 HelloWorld 项目创建及相关配置文件介绍

    咱们通过创建一个 Static Web 项目大致了解了 IntelliJ IDEA 的使用界面,接下来,趁着这个热乎劲,咱们来创建第一个 Java 项目“HelloWorld”,进入如下界面: 如上图 ...