• 成语答题赚小程序里面涉及到金额的小数计算问题


    是这样的,在成语答题赚小程序里面有个红包的概念,用户闯关答题,每次都是几分的小红包,1分,2分,最多1毛钱

    比如我现在红包有1.23,闯关答题奖励了0.01,这样我目前的总红包计算如下

    1.23+0.01

    这里就涉及到了小数位的计算问题,今天在小程序里面遇到了,在之前的逻辑里面没有处理好这个计算细节,经常会出现下面这种情况,这样就会导致在小程序首页展示的时候,出现不可控的情况。

    当然您也可以说能不能只在界面显示2位小数,这没有问题,但是我想的是从根本解决这个问题

    基于群里的讨论,目前总结了两个解决方案

    1)采用第三方精准计算库,比如bigNumber.js

    2)按分为单位存储红包金额,奖励的时候也按照分为单位

    按照上述方案

    1)

    比如在计算的时候

    1.23+0.01 = 1.24

    我调研了下目前存在不少这方面的第三方库,我之前也采用过bigNumber.js

    2)

    123+1=124,最后展示的时候再除以100即可

    从实现上两种方案都不复杂,我没有所谓的倾向使用哪种方案

    1

    bigNumber.js

    https://github.com/MikeMcl/bignumber.js/

    感谢群里大佬提供思路,再次感谢

  • 相关阅读:
    Python
    python参数传递方式
    python可变类型和不可变类型
    进程、线程和协程的理解
    cookie原理
    http报文格式
    Charles的HTTPS抓包方法及原理分析
    fiddler抓包https请求
    python正则表达式
    java的Junit单元测试
  • 原文地址:https://www.cnblogs.com/MyFlora/p/14113222.html
Copyright © 2020-2023  润新知