微信小程序:整数(int)和浮点数(float)做加减运算需要特殊处理

微信小程序用到支付,以及优惠券,例如满100元减50元,原价109.9,减50元,应该是59.9

console.log('109.9-50 =',109.9-50)

输出结果其实是:
109.9-50 = 59.900000000000006

所以需要对输出结果进行处理

// 处理支付金额,至少支付0.01元
  formatMoney(m) {
    let r = Math.floor(m*100) / 100
    r = r < 0.01 ? 0.01 : r
    return r
  },

代码逻辑:
1,金额放大100倍,向下四舍五入,再缩小100倍
2,如果金额小于0.01,则等于0.01,

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容