JavaScript如何实现对数字保留两位小数一位自动补零


Posted in Javascript onDecember 18, 2015

本章节介绍一下如何实现对数字保留两位小数效果,如果数字的原本小数位数不到两位,那么缺少的就自动补零,这个也是为了统一的效果,先看代码实例:

function returnFloat(value){
 var value=Math.round(parseFloat(value)*100)/100;
 var xsd=value.toString().split(".");
 if(xsd.length==1){
 value=value.toString()+".00";
 return value;
 }
 if(xsd.length>1){
 if(xsd[1].length<2){
 value=value.toString()+"0";
 }
 return value;
 }
}
var num=3.1;
console.log(returnFloat(num));

上面的代码实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

1.function returnFloat(value){},参数是要被转换的数字。

2.var value=Math.round(parseFloat(value)*100)/100,这个应该是函数的核心之处,parseFloat(value)将参数转换为浮点数,因为参数有可能是字符串,乘以100是因为要保留两位小数,先将小数点向右移动两个位数,然后再利用Math.round()方法实行四舍五入计算,最后除以100,这样就实现了保留保留两位小数,并且还具有四舍五入效果,但是这个并不完美,如果参数数字本身的小数位数大于等于2是可以的,如3.1415,但是如3或者3.0这样的还是没有完美的实现,继续看下面。

3.var xsd=value.toString().split("."),使用点"."value分隔成一个数组。

4.if(xsd.length==1){value=value.toString()+".00";return value;},如果数组的长度是1,也就是说不存在小数,那么就会为这个数字添加两个0,例如3会被转换成3.00。

5.

if(xsd.length>1){
 if(xsd[1].length<2){
 value=value.toString()+"0";
 }
 return value;
 }

if(xsd.length>1)用来判断数字的长度是否大于1,也就是数字是否具有小数,如有小数,但是小数的位数小于2,也就是类似3.1这样的,就会在后面加一个0,也就是会转换为3.10。

二.相关学习教程:

1.Math.round()可以参阅javascript的Math.round()方法一章节。

2.parseFloat()函数可以参阅javascript的parseFloat()方法一章节。

3.toString()函数可以参阅javascript的Number对象的toString()方法一章节。 

4.split()函数可以参阅javascript的String对象的split()方法一章节。

Javascript 相关文章推荐
用 javascript 实现的点击复制代码
Mar 24 Javascript
JavaScript 10件让人费解的事情
Feb 15 Javascript
jquery实现的超出屏幕时把固定层变为定位层的代码
Feb 23 Javascript
jQuery1.6 使用方法一
Nov 23 Javascript
在js文件中如何获取basePath处理js路径问题
Jul 10 Javascript
JavaScript forEach()遍历函数使用及介绍
Jul 08 Javascript
JavaScript获取客户端IP的方法(新方法)
Mar 11 Javascript
微信小程序 获取设备信息 API实例详解
Oct 02 Javascript
解析ajaxFileUpload 异步上传文件简单使用
Dec 30 Javascript
AngularJS2 与 D3.js集成实现自定义可视化的方法
Dec 01 Javascript
js断点调试经验分享
Dec 08 Javascript
图解javascript作用域链
May 27 Javascript
js格式化时间的方法
Dec 18 #Javascript
谈谈我对JavaScript DOM事件的理解
Dec 18 #Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
Dec 18 #Javascript
jQuery Validation PlugIn的使用方法详解
Dec 18 #Javascript
最简单的JavaScript图片轮播代码(两种方法)
Dec 18 #Javascript
JS弹出对话框实现方法(三种方式)
Dec 18 #Javascript
jQuery Validate表单验证深入学习
Dec 18 #Javascript
You might like
最省空间的计数器
2006/10/09 PHP
简介PHP的Yii框架中缓存的一些高级用法
2016/03/29 PHP
PHP实现的文件上传类与用法详解
2017/07/05 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
2018/04/20 PHP
Smarty模板变量与调节器实例详解
2019/07/20 PHP
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
用js来刷新当前页面保留参数的具体实现
2013/12/23 Javascript
jquery访问ashx文件示例代码
2014/08/11 Javascript
angularJS中$apply()方法详解
2015/01/07 Javascript
AngularJS中比较两个数组是否相同
2016/08/24 Javascript
javascript验证香港身份证的格式或真实性
2017/02/07 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
axios进阶实践之利用最优雅的方式写ajax请求
2017/12/20 Javascript
Vue组件和Route的生命周期实例详解
2018/02/10 Javascript
JS实现的简单下拉框联动功能示例
2018/05/11 Javascript
解决循环中setTimeout执行顺序的问题
2018/06/20 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
详解解决小程序中webview页面多层history返回问题
2019/08/20 Javascript
vue+iview使用树形控件的具体使用
2020/11/02 Javascript
Python类方法__init__和__del__构造、析构过程分析
2015/03/06 Python
解决os.path.isdir() 判断文件夹却返回false的问题
2019/11/29 Python
详解Python3中的 input() 函数
2020/03/18 Python
如何教少儿学习Python编程
2020/07/10 Python
基于python图书馆管理系统设计实例详解
2020/08/05 Python
Python非单向递归函数如何返回全部结果
2020/12/18 Python
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
马歇尔耳机官网:Marshall Headphones
2020/02/04 全球购物
什么是WEB控件?使用WEB控件有哪些优势?
2012/01/21 面试题
工作时间上网检讨书
2014/02/03 职场文书
卖房协议书
2014/04/11 职场文书
《葡萄沟》教学反思
2016/02/23 职场文书
残联2016年全国助残日活动总结
2016/04/01 职场文书
2019年度开业庆典祝福语大全!
2019/07/05 职场文书
Python+Selenium实现读取网易邮箱验证码
2022/03/13 Python
Windows Server 2008配置防火墙策略详解
2022/06/28 Servers