扫码关注官方订阅号
这个用js怎么解决,我们是金融公司,所以希望有好的解决方案,两个数同时放大也一样
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
同比扩大成整数相减再同比缩小
解决方案就是别用js进行任何商业行为。
别用js进行任何商业行为
console.log((18.6-8).toFixed(2));
输出:10.602代表保留位数。
最好是后端语言处理数字
后端也有同样的问题的,一般的解决方案是对结果做格式化,保留n位
与金钱相关的计算请出门右转找后端,并且看到用float, double处理的请就地埋了(在此仅以java为例,应该用BigDecimal)。
float
double
BigDecimal
金融的话,相关计算还是找后台解决比较稳妥。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。
看看这个,有没有帮助JS中浮点数运算不精准
javascript天生的浮点数机制注定它不应该用于需要精确计算的应用中,虽然有好的解决方案,当对于需要精确计算的建议还是交给后台(非nodejs)来完成。曾经有人用nodejs去做3D打印,结果你懂的。。。
js 中没有真正意义上的浮点类型吧!js中的数值运算都会先转换成二进制,然后再进行运算。由于有些小数在转换时会产生无限循环,所以........如果用js使用浮点类型的运算,最简单就乘以一个N*10的倍数,最后再除(上面也有说)具体的解释
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
同比扩大成整数相减再同比缩小
解决方案就是
别用js进行任何商业行为。console.log((18.6-8).toFixed(2));
输出:10.60
2代表保留位数。
最好是后端语言处理数字
后端也有同样的问题的,一般的解决方案是对结果做格式化,保留n位
与金钱相关的计算请出门右转找后端,并且看到用
float,double处理的请就地埋了(在此仅以java为例,应该用BigDecimal)。金融的话,相关计算还是找后台解决比较稳妥。
float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。
看看这个,有没有帮助JS中浮点数运算不精准
javascript天生的浮点数机制注定它不应该用于需要精确计算的应用中,虽然有好的解决方案,当对于需要精确计算的建议还是交给后台(非nodejs)来完成。曾经有人用nodejs去做3D打印,结果你懂的。。。
js 中没有真正意义上的浮点类型吧!
js中的数值运算都会先转换成二进制,然后再进行运算。
由于有些小数在转换时会产生无限循环,所以........
如果用js使用浮点类型的运算,最简单就乘以一个N*10的倍数,最后再除(上面也有说)
具体的解释