js数字舍入误差以及解决方法(必看篇)


Posted in Javascript onFebruary 28, 2017

1、起因:

js数字舍入误差以及解决方法(必看篇)

返回结果是true。

2、原因:计算机的二进制实现和位数限制有些数无法有限表示。就像一些无理数不能有限表示,如 圆周率 3.1415926...,1.3333... 等。JS 遵循 IEEE 754 规范,采用双精度存储(double precision),占用 64 bit。

3、解决方法

(1)toFixed(),存在兼容性(chrome)

js数字舍入误差以及解决方法(必看篇)

(2)比较稳妥方法(数字如果过大,也会有误差):

*JS 中能精准表示的最大整数是 Math.pow(2, 53),十进制即 9007199254740992。  大于 9007199254740992 的可能会丢失精度

function round(num,d){

//Step1:将num放大10的d次方倍

num*=Math.pow(10,d);

//Step2:对num四舍五入取整

num = Math.round(num);

//Step:返回num缩小10的d次方倍,获得最终结果

return num/Math.round(10,d);

}

console.log(round(123.456)); //123.46

以上这篇js数字舍入误差以及解决方法(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中的View-Model使用介绍
Aug 11 Javascript
jQuery选择器全面总结
Jan 06 Javascript
鼠标滑过出现预览的大图提示效果
Feb 26 Javascript
jQuery中animate用法实例分析
Mar 09 Javascript
jquery实现的3D旋转木马特效代码分享
Aug 25 Javascript
jquery中实现时间戳与日期相互转换
Apr 12 Javascript
前端设计师们最常用的JS代码汇总
Sep 25 Javascript
自己封装的一个原生JS拖动方法(推荐)
Nov 22 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
Nov 17 Javascript
ES6下子组件调用父组件的方法(推荐)
Feb 23 Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 Javascript
Vue实现商品分类菜单数量提示功能
Jul 26 Javascript
JS实现浏览器打印、打印预览示例
Feb 28 #Javascript
JS基于面向对象实现的多个倒计时器功能示例
Feb 28 #Javascript
js中删除数组中的某一元素实例(无下标时)
Feb 28 #Javascript
jQuery图片切换动画效果
Feb 28 #Javascript
jQuery 判断元素整理汇总
Feb 28 #Javascript
jQuery倒计时代码(超简单)
Feb 27 #Javascript
js实现图片左右滚动效果
Feb 27 #Javascript
You might like
php checkbox复选框值的获取与checkbox默认值输出方法
2010/05/15 PHP
PHP验证码类代码( 最新修改,完全定制化! )
2010/12/02 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
PHP递归调用数组值并用其执行指定函数的方法
2015/04/01 PHP
php简单实现批量上传图片的方法
2016/05/09 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
2020/03/26 PHP
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
jQuery.query.js 取参数的两点问题分析
2012/08/06 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
Vue.js第四天学习笔记
2016/12/02 Javascript
基于cookie实现zTree树刷新后展开状态不变
2017/02/28 Javascript
通俗解释JavaScript正则表达式快速记忆
2017/08/23 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
浅析Vue 生命周期
2018/06/21 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
2019/04/02 Javascript
JavaScript语句错误throw、try及catch实例解析
2020/08/18 Javascript
[07:52]2014DOTA2 TI逗比武士游V社解说背后的故事
2014/07/10 DOTA
python list删除元素时要注意的坑点分享
2018/04/18 Python
浅谈Python采集网页时正则表达式匹配换行符的问题
2018/12/20 Python
Python+OpenCV感兴趣区域ROI提取方法
2019/01/10 Python
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
python 计算两个列表的相关系数的实现
2019/08/29 Python
解决Pycharm 导入其他文件夹源码的2种方法
2020/02/12 Python
Django自关联实现多级联动查询实例
2020/05/19 Python
图片上传插件ImgUploadJS:用HTML5 File API 实现截图粘贴上传、拖拽上传
2016/01/20 HTML / CSS
DHC美国官网:日本通信销售第一的化妆品品牌
2017/11/12 全球购物
node中使用shell脚本的方法步骤
2021/03/23 Javascript
工作推荐信范文
2014/05/10 职场文书
空气环保标语
2014/06/12 职场文书
学习十八大演讲稿
2014/09/15 职场文书
幼儿园中班教师个人工作总结
2015/02/06 职场文书
2015年保育员个人工作总结
2015/05/13 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
2016年优秀共青团员事迹材料
2016/02/25 职场文书
SQL Server中使用判断语句(IF ELSE/CASE WHEN )案例
2021/07/07 SQL Server