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 相关文章推荐
使用IE的地址栏来辅助调试Web页脚本
Mar 08 Javascript
页面只有一个text的时候,回车自动submit的解决方法
Aug 12 Javascript
javascript对select标签的控制(option选项/select)
Jan 31 Javascript
Extjs NumberField后面加单位实现思路
Jul 30 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
Aug 07 Javascript
js的window.showModalDialog及window.open用法实例分析
Jan 29 Javascript
简单谈谈node.js 版本控制 nvm和 n
Oct 15 Javascript
JS正则子匹配实例分析
Dec 22 Javascript
ionic开发中点击input时键盘自动弹出
Dec 23 Javascript
很棒的一组js图片轮播特效
Jan 12 Javascript
axios 封装上传文件的请求方法
Sep 26 Javascript
Vue项目中使用better-scroll实现菜单映射功能方法
Sep 11 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
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
PHP中防止直接访问或查看或下载config.php文件的方法
2012/07/07 PHP
Yii框架安装简明教程
2020/05/15 PHP
关于使用runtimeStyle属性问题讨论文章
2007/03/08 Javascript
JS获取页面窗口大小的代码解读
2011/12/01 Javascript
jQuery 淡入淡出 png图在ie8下有黑色边框的解决方法
2013/03/05 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
setTimeout内不支持jquery的选择器的解决方案
2015/04/28 Javascript
jQuery验证表单格式的使用方法
2017/01/10 Javascript
详解html-webpack-plugin用法全解
2018/01/22 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
2018/09/26 Javascript
React和Vue中监听变量变化的方法
2018/11/14 Javascript
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
js实现for循环跳过undefined值示例
2019/07/02 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
[01:38]完美世界DOTA2联赛(PWL)宣传片:第一站
2020/10/26 DOTA
python批量提交沙箱问题实例
2014/10/08 Python
python实现删除文件与目录的方法
2014/11/10 Python
Python简单进程锁代码实例
2015/04/27 Python
python3.5仿微软计算器程序
2020/03/30 Python
Python实现App自动签到领取积分功能
2018/09/29 Python
python+PyQT实现系统桌面时钟
2020/06/16 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
python 浅谈serial与stm32通信的编码问题
2019/12/18 Python
python修改linux中文件(文件夹)的权限属性操作
2020/03/05 Python
东南亚地区最大的购物网站Lazada新加坡站点:Lazada.sg
2016/07/17 全球购物
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
高中政治教学反思
2014/01/18 职场文书
英语专业学生个人求职信
2014/01/28 职场文书
户外活动策划方案
2014/03/12 职场文书
交通志愿者活动总结
2014/06/27 职场文书
2014幼儿园教师师德师风演讲稿
2014/09/10 职场文书
督导岗位职责
2015/02/04 职场文书
2015年学校精神文明工作总结
2015/05/27 职场文书
Python绘制散点图之可视化神器pyecharts
2022/07/07 Python