我知道这可能是由于某种舍入技术,但显然6.53 + 8应该只等于14.53。我的问题是,为什么会发生这种情况,我怎样才能获得准确的数额?
var x = 6.53 + 8;
console.log(x);// 14.530000000000001
答案 0 :(得分:3)
这是JS
的正常行为,请尝试使用toFixed(2)
这样的
var x = 6.53 + 8;
console.log(x.toFixed(2));
答案 1 :(得分:2)
小数点数在计算机中的表示方式不同......并且有这个问题..在许多编程语言中都会发生这种情况......将数字四舍五入到一定的精度......只要你没有&#39 ;用JavaScript做高级计算你会没事的。更多信息。 https://www.w3schools.com/js/js_numbers.asp