JS使用tofixed与round处理数据四舍五入的区别


Posted in Javascript onOctober 25, 2017

1 、tofixed方法

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。例如将数据Num保留2位小数,则表示为:toFixed(Num);但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规则,银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。具体规则如下:

简单来说就是:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。

显然这种规则不符合我们平常在数据中处理的方式。为了解决这样的问题,可以自定义去使用Math.round方法进行自定义式 的实现指定保留多少位数据进行处理。

2 、 round方法

round() 方法可把一个数字舍入为最接近的整数。例如:Math.round(x),则是将x取其最接近的整数。其取舍的方法使用的是四舍五入中的方法,符合数学中取舍的规则。对于小数的处理没有那么便捷,但是可以根据不同的要求,进行自定义的处理。

例如:对于X进行保留两位小数的处理,则可以使用Math.round(X * 100) / 100.进行处理。

ps:四舍五入:JavaScript toFixed() 方法 和 Math.Round 方法比较 

Math.Round  (vs2005)
Math.Round(3.44, 1); //Returns 3.4.
Math.Round(3.45, 1); //Returns 3.4.
Math.Round(3.46, 1); //Returns 3.5.

在工程技术、金融和科学领域,我们往往认为将一个小数圆整到距离它最近的偶数(而并非总是将它向上圆整)更加精确,即我们在此所说的“四舍六入”法。

Math.Round()方法使用的银行家算法的依据,是IEEE Standard 754这个国际标准

“四舍六入法”可以概括为:“四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍去,五前为奇要进一。”

总结

以上所述是小编给大家介绍的JS使用tofixed与round处理数据四舍五入的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
菜单效果
Oct 14 Javascript
js给dropdownlist添加选项的小例子
Mar 04 Javascript
JS 跳转页面延迟2种方法
Mar 29 Javascript
Jquery实现瀑布流布局(备有详细注释)
Jul 31 Javascript
Markdown与Bootstrap相结合实现图片自适应属性
May 04 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
Nov 07 Javascript
JS新包管理工具yarn和npm的对比与使用入门
Dec 09 Javascript
Vue 2.X的状态管理vuex记录详解
Mar 23 Javascript
p5.js实现斐波那契螺旋的示例代码
Mar 22 Javascript
使用JavaScript实现网页秒表功能(含开始、暂停、继续、重置功能)
Jun 05 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
Sep 02 Javascript
JS实现4位随机验证码
Oct 19 Javascript
javascript计算对象长度的方法
Oct 25 #Javascript
AngularJS实现的select二级联动下拉菜单功能示例
Oct 25 #Javascript
Angular4实现鼠标悬停3d倾斜效果
Oct 25 #Javascript
详解vue 组件之间使用eventbus传值
Oct 25 #Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
Oct 25 #Javascript
Windows安装Node.js报错:2503、2502的解决方法
Oct 25 #Javascript
JavaScript编程设计模式之构造器模式实例分析
Oct 25 #Javascript
You might like
Terran历史背景
2020/03/14 星际争霸
提升PHP执行速度全攻略(下)
2006/10/09 PHP
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
老生常谈PHP中的数据结构:DS扩展
2017/07/17 PHP
建立良好体验度的Web注册系统ajax
2007/07/09 Javascript
js正确获取元素样式详解
2009/08/07 Javascript
caller和callee的区别介绍及演示结果
2013/03/10 Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
2015/08/17 Javascript
详解JavaScript中localStorage使用要点
2016/01/13 Javascript
结合代码图文讲解JavaScript中的作用域与作用域链
2016/07/05 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
2016/11/01 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
NodeJs 实现简单WebSocket即时通讯的示例代码
2019/08/05 NodeJs
解决layer.open后laydate失效的问题
2019/09/06 Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
2019/09/14 Javascript
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
Python 常用string函数详解
2016/05/30 Python
Python环境搭建之OpenCV的步骤方法
2017/10/20 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
python多进程实现进程间通信实例
2017/11/24 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
python 读取修改pcap包的例子
2019/07/23 Python
sublime3之内网安装python插件Anaconda的流程
2020/11/10 Python
CSS图片翻转动画技术详解(IE也实现了)
2014/04/03 HTML / CSS
介绍一下EJB的体系结构
2012/08/01 面试题
表决心的诗句大全
2014/03/11 职场文书
会计与出纳自荐书范文
2014/03/16 职场文书
安全生产月宣传标语
2014/10/06 职场文书
全国法制宣传日活动总结2014
2014/11/01 职场文书
2014年班级工作总结范文
2014/12/23 职场文书
销售区域经理岗位职责
2015/04/10 职场文书
2015年审计人员工作总结
2015/05/26 职场文书
企业廉洁教育心得体会
2016/01/20 职场文书
「地球外少年少女」BD发售宣传CM公开
2022/03/21 日漫
Matplotlib绘制条形图的方法你知道吗
2022/03/21 Python
MySQL数据库 安全管理
2022/05/06 MySQL