在JavaScript中,有如下几行代码: var quantity = 5; var price = 99.66; var subtotal = price * quantity; alert(subtotal); 为什么输出的结果不是498.3,而是498.29999999999995 ?请问出现这种情况应该怎么解决?
时间: 2023-12-14 08:37:17 浏览: 76
输入数量和价格自动计算输出金额的js代码
5星 · 资源好评率100%
这是因为 JavaScript 使用 IEEE 754 标准来表示浮点数,导致在进行浮点数运算时可能会出现精度误差。
要解决这个问题,可以使用 toFixed() 方法将结果保留指定的小数位数并转化为字符串,例如:
```
var quantity = 5;
var price = 99.66;
var subtotal = (price * quantity).toFixed(2);
alert(subtotal);
```
这样就可以得到正确的结果 498.30。注意,使用 toFixed() 方法会将结果转化为字符串类型。
阅读全文