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 相关文章推荐
jquery tools之tabs 选项卡/页签
Jul 25 Javascript
让div层随鼠标移动的实现代码 ie ff
Dec 18 Javascript
7个有用的jQuery代码片段分享
May 19 Javascript
JS+CSS实现滑动切换tab菜单效果
Aug 25 Javascript
浅析如何利用JavaScript进行语音识别
Oct 27 Javascript
Bootstrap禁用响应式布局的实现方法
Mar 09 Javascript
整理关于Bootstrap排版的慕课笔记
Mar 29 Javascript
解决低版本的浏览器不支持es6的import问题
Mar 09 Javascript
element vue validate验证名称重复 输入框与后台重复验证 特殊字符 字符长度 及注意事项小结【实例代码】
Nov 20 Javascript
koa+jwt实现token验证与刷新功能
May 30 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
Jan 27 Vue.js
React 高阶组件HOC用法归纳
Jun 13 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
解析php下载远程图片函数 可伪造来路
2013/06/25 PHP
php将csv文件导入到mysql数据库的方法
2014/12/24 PHP
PHP自定义函数实现数组比较功能示例
2017/10/19 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
通过源码解析Laravel的依赖注入
2018/01/22 PHP
PHP实现文件上传后台处理脚本
2020/03/04 PHP
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
老鱼 浅谈javascript面向对象编程
2010/03/04 Javascript
Nodejs极简入门教程(三):进程
2014/10/27 NodeJs
jQuery实现高亮显示网页关键词的方法
2015/08/07 Javascript
Node.js中用D3.js的方法示例
2017/01/16 Javascript
详解nodejs express下使用redis管理session
2017/04/24 NodeJs
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
浅谈Node异步编程的机制
2017/10/18 Javascript
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
webpack vue 项目打包生成的文件,资源文件报404问题的修复方法(总结篇)
2018/01/09 Javascript
详解angular路由高亮之RouterLinkActive
2018/04/28 Javascript
VueJs组件之父子通讯的方式
2018/05/06 Javascript
Next.js项目实战踩坑指南(笔记)
2018/11/29 Javascript
vue.js 2.0实现简单分页效果
2019/07/29 Javascript
原生js添加一个或多个类名的方法分析
2019/07/30 Javascript
vue的路由映射问题及解决方案
2019/10/14 Javascript
echarts饼图各个板块之间的空隙如何实现
2020/12/01 Javascript
[00:32]2018DOTA2亚洲邀请赛iG出场
2018/04/03 DOTA
跟老齐学Python之做一个小游戏
2014/09/28 Python
python实现数组插入新元素的方法
2015/05/22 Python
Python 多线程抓取图片效率对比
2016/02/27 Python
pygame游戏之旅 添加游戏界面按键图形
2018/11/20 Python
中秋节礼品促销方案
2014/02/02 职场文书
迟到检讨书500字
2014/02/05 职场文书
保险专业大学生职业规划书
2014/03/03 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
2014年团支书工作总结
2014/11/14 职场文书
2014会计年终工作总结
2014/12/20 职场文书
2015大学生自我评价范文
2015/03/03 职场文书
react使用antd的上传组件实现文件表单一起提交功能(完整代码)
2021/06/29 Javascript