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 相关文章推荐
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
Dec 22 Javascript
javascript实现的在当前窗口中漂浮框的代码
Mar 15 Javascript
Javascript this 的一些学习总结
Aug 02 Javascript
js 实现在离开页面时提醒未保存的信息(减少用户重复操作)
Jan 16 Javascript
js字符串截取函数substr substring slice使用对比
Nov 27 Javascript
多个checkbox被选中时如何判断是否有自己想要的
Sep 22 Javascript
浅谈关于.vue文件中style的scoped属性
Aug 19 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
Sep 05 Javascript
原生JS实现移动端web轮播图详解(结合Tween算法造轮子)
Sep 10 Javascript
强大的JavaScript响应式图表Chartist.js的使用
Sep 13 Javascript
vue实现2048小游戏功能思路详解
May 09 Javascript
使用vue-router与v-if实现tab切换遇到的问题及解决方法
Sep 07 Javascript
用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传输数据的代码
2007/11/13 PHP
PHP操作数组的一些函数整理介绍
2011/07/17 PHP
浅析php变量作用域的一些问题
2013/08/08 PHP
PHP连接操作access数据库实例
2015/03/30 PHP
php简单计算年龄的方法(周岁与虚岁)
2016/12/06 PHP
PHP集成环境XAMPP的安装与配置
2018/11/13 PHP
javascript中interval与setTimeOut的区别示例介绍
2014/03/14 Javascript
jQuery文件上传插件Uploadify使用指南
2014/06/05 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
JavaScript中的Math.sin()方法使用详解
2015/06/15 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
2015/10/30 Javascript
一道JS前端闭包面试题解析
2015/12/25 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
简单实现jQuery轮播效果
2017/08/18 jQuery
微信小程序组件之srcoll-view的详解
2017/10/19 Javascript
从零开始用electron手撸一个截屏工具的示例代码
2018/10/10 Javascript
微信小程序基于movable-view实现滑动删除效果
2020/01/08 Javascript
[00:34]DOTA2上海特级锦标赛 VG战队宣传片
2016/03/04 DOTA
Python3中多线程编程的队列运作示例
2015/04/16 Python
详解Python的Django框架中的模版继承
2015/07/16 Python
浅析Python中的for 循环
2016/06/09 Python
python和ruby,我选谁?
2017/09/13 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
使用python将最新的测试报告以附件的形式发到指定邮箱
2019/09/20 Python
python3+openCV 获取图片中文本区域的最小外接矩形实例
2020/06/02 Python
python对一个数向上取整的实例方法
2020/06/18 Python
Python基于正则表达式实现计算器功能
2020/07/13 Python
关于python中remove的一些坑小结
2021/01/04 Python
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
英国豪华真皮和布艺沙发销售网站:Darlings of Chelsea
2018/01/05 全球购物
出纳员岗位职责
2014/03/13 职场文书
Python的三个重要函数详解
2022/01/18 Python
Java8 Stream API 提供了一种高效且易于使用的处理数据的方式
2022/04/13 Java/Android
在windows server 2012 r2中安装mysql的详细步骤
2022/07/23 Servers