查看: 38|回复: 0

[简易教程] js 解决小数加法问题

[复制链接]

418

主题

73

听众

3897

积分

Rank: 12Rank: 12Rank: 12

发表于 2019-11-25 17:09 |显示全部楼层
共享资源获取更多积分!share your resources get more credits!

如何涉及到金额,我们就要对小数进行处理

const floatAdd = (arg1, arg2) => {
        var r1,r2,m;
    try {
            r1 = arg1.toString().split(".")[1].length;
    } catch(e) {
            r1 = 0;
    }
    try {
            r2 = arg2.toString().split(".")[1].length;
    } catch(e) {
            r2 = 0;
    }
    m  =Math.pow(10,Math.max(r1,r2));
    return (arg1*m+arg2*m)/m;
};

避免出现比如0.1+0.2 = 0.30000000000000004,此方法缺点比较消耗,原理是找到整数去计算
楼主热帖
人人为我 我为人人 互相分享 互相学习 互相进步 一带一路
温馨提示:求助请到“Unity技术讨论”版块中发帖,便于集中解决!
您需要登录后才可以回帖 登录 | 立即注册

懒人模式:

关闭

站长推荐 上一条 /1 下一条

Unity3D游戏开发联盟(资源共享平台) -Unity3D,Unreal ( 苏ICP备12051100号 )   

GMT+8, 2019-12-15 02:01 , Processed in 0.092147 second(s), 44 queries .