美文网首页
js数学计算出现精度

js数学计算出现精度

作者: MrHong_bfea | 来源:发表于2020-11-08 08:47 被阅读0次

    之前在做商品计算折扣问题的时候,发现简单的数学乘除法会出现精度的问题,比如本来算出来应该是0.3的,但结果是0.2999999999999999。
    那么接下来就来看看如何解决吧!

    在vue里引入mathjs

    npm install mathjs
    

    然后封装一下mathjs的加减乘除法,将他们暴露出去就可以直接使用了,新建个Math.js的文件

    const math = require('mathjs')
    // 加法
    function add(a, b) {
      return math.format(math.add(math.bignumber(a), math.bignumber(b)))
    }
    
    // 减法
    function subtract(a, b) {
      return math.format(math.subtract(math.bignumber(a), math.bignumber(b)))
    }
    
    // 乘法
    function multiply(a, b) {
      return math.format(math.multiply(math.bignumber(a), math.bignumber(b)))
    }
    
    // 除法
    function divide(a, b) {
      return math.format(math.divide(math.bignumber(a), math.bignumber(b)))
    }
    
    module.exports = {
      add,
      subtract,
      multiply,
      divide
    }
    
    

    在需要的地方里引入该文件即可使用

    相关文章

      网友评论

          本文标题:js数学计算出现精度

          本文链接:https://www.haomeiwen.com/subject/tdicbktx.html