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进制
需要注意的是,如过字符串的第一个字符时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 关于字符串转数字及数字保留位数的控制的更多相关文章
- js判断字符串中是否有数字和字母
var p = /[0-9]/; var b = p.test(string);//true,说明有数字var p = /[a-z]/i; var b = p.test(string);//true, ...
- js 获取字符串中所有的数字和汉字
var re1 = /(\d{1,3})+(?:\.\d+)?/g var re2 = /[\u4e00-\u9fa5]{2,}/g var str="11我22们33两个"; v ...
- js字符串转换成数字与数字转换成字符串的实现方法
转载:点击查看地址 js字符串转换成数字 将字符串转换成数字,得用到parseInt函数.parseInt(string) : 函数从string的开始解析,返回一个整数. 举例:parseInt(' ...
- js字符串转换成数字,数字转换成字符串
转自网络,忘记出处了. js字符串转换成数字 将字符串转换成数字,得用到parseInt函数. parseInt(string) : 函数从string的开始解析,返回一个整数. 举例:parseIn ...
- js中字符串转换为数字
js 字符串转化成数字的三种方法主要有 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后 ...
- js区分字符串和数字,有时候需要将字符串转换成数字
js区分字符串和数字,有时候需要将字符串转换成数字 :parseInt
- js将字符串转变成数字
方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把值转换成浮点数.只有 ...
- JS截取字符串中数字
今天项目中需要在一个字符串中截取一个数字,然后数字参与运算.搜了一下,有好多好用的方式截取字符串. 1,使用parseInt() var str ="4500元"; var num ...
- js中字符串转数字的方法
1.当字符串中是纯数字 例如:var s = '234'; /********** 字符串在运算操作中会被当做数字类型来处理 ***************/ s *= 1; /******* str ...
随机推荐
- Nodejs 如何制作命令行工具
# 全局安装,安装报错是需要前面加上sudo $ sudo npm install -g xxxb # 输出帮助 $ xxxb -h Usage: xxxb 这里是我私人玩耍的命令哦![options ...
- 设置cssrem,设置emmet
1.文件->首选项->设置 2.搜索cssrem-> 点击设置:"cssrem.rootFontSize": 16, 4.emmet
- Zepto和Jquery区别
---恢复内容开始--- <zepto移动端事件> 1.$("#xx").tap(function(){ //tap在屏幕点击时触发 alert("sssss ...
- RePlugin 插件化-内置加载
PS:插件化是什么这里就不再说了,从这里开始两种加载方式中的一种(内置加载),该框架是奇虎360开发的,官方给出优点 RePlugin是一套完整的.稳定的.适合全面使用的,占坑类插件化方案.我们&qu ...
- PowerDesigner 连接数据库(以MySQL)为例
- SQL 数据匹配更新
萌新的成长之路! 最近遇到的一个需求是需要将两张关联的表的数据进行匹配(dbo.SystemUser[系统用户表]:dbo.V_Temp[系统权限视图]),即通过匹配用户ID与系统ID(拥有的系统ID ...
- Angular 5.x 学习笔记(2) - 生命周期钩子 - 暂时搁浅
Angular 5.x Lifecycle Hooks Learn Note Angular 5.x 生命周期钩子学习笔记 标签(空格分隔): Angular Note on cnblogs.com ...
- oracle 父子级 查询
SELECT * FROM T_ASSETS_TYPE t CONNECT by t.UNIQUE_CODE = prior t.SUP_ASSETS_CODE start with t.UNIQUE ...
- RedHat 6.4源码方式安装mysql5.5
参考文档:http://dev.mysql.com/downloads/file/?id=463397 下载地址http://dev.mysql.com/doc/refman/5.7/en/ 文档地址 ...
- zt dup() 和 dup2()
dup() 和 dup2() 2011-10-07 11:06:31| 分类: Linux学习心得 |字号 订阅 dup和dup2都可用来复制一个现存的文件描述符,使两个文件描述符指向同一个fi ...