Javascript浮点数乘积运算出现多位小数的解决方法

 更新时间:2014年02月17日 15:39:09   作者:  
这篇文章主要介绍了Javascript浮点数乘积运算出现多位小数的解决方法,需要的朋友可以参考下

Javascript在进行浮点数的乘积运算,会出现多位小数的情况。

这是由于在运算的时候先把浮点数转化成二进制后进行运算,但是有的小数在二进制编码后出现无限循环,因而导致计算出现了误差,在其它变成语言中也有类似的问题。

原因解释参考自百度知道:

例如:求1038.1-1000
1038.1=10000001110.0001100110011001100110011001100110011001100.....
1000 =1111101000

1038.1转化为二进制是个无限循环小数,1100是循环节,只能取近似值,误差就是这里产生的 如果浏览器版本高,可以用toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

解决方案:根据要保留的小数位数(如4),在计算乘积的时候先乘以(10^4),然后对计算结果除以(10^4),最后对结果取近似值Math.round

复制代码 代码如下:

var m1 = 2232.00,
percent = (10/100),
total = percent*m1;
alert(total);//223.20000000000002

total = Math.round(total*10)/10;
alert(total);//223.2

相关文章

  • 小程序组件传值和引入sass的方法(使用vant Weapp组件库)

    小程序组件传值和引入sass的方法(使用vant Weapp组件库)

    这篇文章主要介绍了小程序组件传值和引入sass使用vant Weapp组件库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 基于JS实现一个简单的投票demo

    基于JS实现一个简单的投票demo

    这篇文章主要介绍了如何利用JavaScript实现一个简单的投票demo,文中的示例代码讲解详细,对我们学习有一定参考价值,需要的可以参考一下
    2022-06-06
  • 原生JS控制多个滚动条同步跟随滚动效果

    原生JS控制多个滚动条同步跟随滚动效果

    本文要探讨的是,当这两个容器元素的内容都超出了容器高度,即都出现了滚动框的时候,如何在其中一个容器元素滚动时,让另外一个元素也随之滚动
    2017-12-12
  • Javascript中拼接大量字符串的方法

    Javascript中拼接大量字符串的方法

    这篇文章主要介绍了Javascript中拼接大量字符串的方法,本文实现的就是JS语言中的Heredoc语法,需要的朋友可以参考下
    2015-02-02
  • JS仿Windows开机启动Loading进度条的方法

    JS仿Windows开机启动Loading进度条的方法

    这篇文章主要介绍了JS仿Windows开机启动Loading进度条的方法,实例分析了javascript操作html元素及对应样式实现特效的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02
  • javascript+html5+css3自定义提示窗口

    javascript+html5+css3自定义提示窗口

    这篇文章主要为大家详细介绍了javascript+html5+css3自定义提示窗口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • JavaScript淡入淡出渐变简单实例

    JavaScript淡入淡出渐变简单实例

    这篇文章主要介绍了JavaScript淡入淡出渐变实现方法,涉及javascript页面元素样式的渐变操作技巧,非常简单实用,需要的朋友可以参考下
    2015-08-08
  • bootstrap模态框远程示例代码分享

    bootstrap模态框远程示例代码分享

    这篇文章主要为大家详细介绍了bootstrap模态框远程示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • 原生js获取元素样式的简单方法

    原生js获取元素样式的简单方法

    下面小编就为大家带来一篇原生js获取元素样式的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • JS实现多功能计算器

    JS实现多功能计算器

    这篇文章主要为大家详细介绍了JS实现多功能计算器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10

最新评论