javascript - js中两个小数相减,出现的多位小数
高洛峰
高洛峰 2017-04-11 11:03:38
[JavaScript讨论组]

这个用js怎么解决,我们是金融公司,所以希望有好的解决方案,两个数同时放大也一样

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(16)
巴扎黑

同比扩大成整数相减再同比缩小

高洛峰

解决方案就是别用js进行任何商业行为

阿神

console.log((18.6-8).toFixed(2));

输出:10.60
2代表保留位数。

PHP中文网

最好是后端语言处理数字

伊谢尔伦

后端也有同样的问题的,一般的解决方案是对结果做格式化,保留n位

天蓬老师

与金钱相关的计算请出门右转找后端,并且看到用float, double处理的请就地埋了(在此仅以java为例,应该用BigDecimal)。

PHP中文网

金融的话,相关计算还是找后台解决比较稳妥。
float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。

大家讲道理

看看这个,有没有帮助JS中浮点数运算不精准

PHP中文网

javascript天生的浮点数机制注定它不应该用于需要精确计算的应用中,虽然有好的解决方案,当对于需要精确计算的建议还是交给后台(非nodejs)来完成。曾经有人用nodejs去做3D打印,结果你懂的。。。

高洛峰

js 中没有真正意义上的浮点类型吧!
js中的数值运算都会先转换成二进制,然后再进行运算。
由于有些小数在转换时会产生无限循环,所以........
如果用js使用浮点类型的运算,最简单就乘以一个N*10的倍数,最后再除(上面也有说)
具体的解释

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号