JS 控制小数位数的实现代码


Posted in Javascript onAugust 02, 2011

昨天在用JS对前台浮点数进行合算时发现:
0.05+1.08=1.1300000000000001

上网查一查的确存在这种Bug,除了位数上控制之外也没什么也好的方法(希望高手能提出
其它思路)。

于是自己编写一个控制小数位数的JS方法,解决开发燃眉之急

//小数位数控制,可以四舍五入 
function Fractional(n) { 
//小数保留位数 
var bit = 2; 
//加上小数点后要扩充1位 
bit++; 
//数字转为字符串 
n = n.toString(); 
//获取小数点位置 
var point = n.indexOf('.'); 
//n的长度大于保留位数长度 
if (n.length > point + bit) { 
//保留小数后一位是否大于4,大于4进位 
if (parseInt(n.substring(point + bit, point + bit + 1)) > 4) { 
return n.substring(0, point) + "." + (parseInt(n.substring(point + 1, point + bit)) + 1); 
} 
else { 
return n.substring(0, point) + n.substring(point, point + bit); 
} 
} 
return n; 
}
Javascript 相关文章推荐
关于javascript document.createDocumentFragment()
Apr 04 Javascript
JS过滤url参数特殊字符的实现方法
Dec 24 Javascript
jquery.mousewheel实现整屏翻屏效果
Aug 30 Javascript
jQuery图片渐变特效的简单实现
Jun 25 Javascript
用jquery快速解决IE输入框不能输入的问题
Oct 04 Javascript
echarts3 使用总结(绘制各种图表,地图)
Jan 05 Javascript
AngularJS学习第二篇 AngularJS依赖注入
Feb 13 Javascript
js 显示日期时间的实例(时间过一秒加1)
Oct 25 Javascript
VSCode 配置React Native开发环境的方法
Dec 27 Javascript
vue-cli脚手架引入图片的几种方法总结
Mar 13 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
Nov 12 Javascript
vue element-ul实现展开和收起功能的实例代码
Nov 25 Vue.js
用JS判别浏览器种类以及IE版本的几种方法小结
Aug 02 #Javascript
JQuery+JS实现仿百度搜索结果中关键字变色效果
Aug 02 #Javascript
基于jquery实现漂亮的动态信息提示效果
Aug 02 #Javascript
基于jQuery替换table中的内容并显示进度条的代码
Aug 02 #Javascript
jQuery动态添加的元素绑定事件处理函数代码
Aug 02 #Javascript
jQuery ajax 路由和过滤器使用说明
Aug 02 #Javascript
js禁止小键盘输入数字功能代码
Aug 01 #Javascript
You might like
PHP中对数据库操作的封装
2006/10/09 PHP
php header Content-Type类型小结
2011/07/03 PHP
PHP应用JSON技巧讲解
2013/02/03 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
2014/06/30 PHP
Thinkphp实现短信验证注册功能
2016/10/18 PHP
解决PHP程序运行时:Fatal error: Maximum execution time of 30 seconds exceeded in的错误提示
2016/11/25 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
善用事件代理,警惕闭包的性能陷阱。
2011/01/20 Javascript
精心挑选的15款优秀jQuery 本特效插件和教程
2012/08/06 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
jquery提取元素里的纯文本不包含span等里的内容
2013/09/30 Javascript
JavaScript插件化开发教程 (三)
2015/01/27 Javascript
JavaScript让网页出现渐隐渐显背景颜色的方法
2015/04/21 Javascript
JavaScript事件学习小结(一)事件流
2016/06/09 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
two.js之实现动画效果示例
2017/11/06 Javascript
详解Vue-cli中的静态资源管理(src/assets和static/的区别)
2018/06/19 Javascript
Vue+Element UI+Lumen实现通用表格分页功能
2019/02/02 Javascript
vue实现短信验证码输入框
2020/04/17 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
2020/04/22 Javascript
举例讲解Python中的死锁、可重入锁和互斥锁
2015/11/05 Python
Python实现将16进制字符串转化为ascii字符的方法分析
2017/07/21 Python
Python科学计算包numpy用法实例详解
2018/02/08 Python
详解Python中的正斜杠与反斜杠
2019/08/09 Python
python except异常处理之后不退出,解决异常继续执行的实现
2020/04/25 Python
CSS3解析抖音LOGO制作的方法步骤
2019/04/11 HTML / CSS
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
好莱坞百老汇御用王牌美妆:Koh Gen Do 江原道
2018/04/03 全球购物
LivingSocial英国:英国本地优惠
2019/02/22 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
抄作业检讨书
2014/02/17 职场文书
设备售后服务承诺书
2014/05/30 职场文书
十佳青年事迹材料
2014/08/21 职场文书
致800米运动员广播稿(10篇)
2014/10/17 职场文书
四风问题原因分析及整改措施
2014/10/24 职场文书
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
2021/06/30 SQL Server