js 两个数字相加,33.33 + 0.01为什么会等于33.3399999996?
代码:
打印:
因为后端给的是string类型不能直接相加,所以我转为number后相加 就成了上图那样的结果了
Number() parseFloat()都试了都是一样不行
回答
可以用科学计算法处理,https://blog.csdn.net/weixin_...
我自己用的加法封装
function NumAdd() { let sum = 0; // 用来保存总和
for (var i = 0; i < arguments.length; i++) {
let col = Number(arguments[i]);
if (!isNaN(col)) {
sum += col * 1000;
}
}
return sum / 1000;
}
NumAdd(33.33,0.01) //=>33.34
https://blog.csdn.net/cc_chen...
原因请百度0.1+0.2
解决办法就是重新toFixed
https://0.30000000000000004.com
以上是 js 两个数字相加,33.33 + 0.01为什么会等于33.3399999996? 的全部内容, 来源链接: utcz.com/a/60739.html