为什么我的相同JS函数会产生不同的结果?

时间:2017-10-25 23:15:51

标签: javascript

我正在学习熟悉JS。我正在练习一项给出膳食成本的练习,即。 $ 100,我需要计算在添加15%的提示和9.5%的税后我需要支付的总金额。

我写了两个函数:billTotal()和billTotal2()。但是,billTotal()给出了一个奇怪的输出$ 124.49999999999999。 billTotal2()给出正确的输出:$ 124.5。我尝试使用pythontutor.com来跟踪可视化情况,但我仍然无法弄明白。

我的问题:有谁知道为什么billTotal()输错了?   billTotal()和billTotal2()做同样的事情。

function billTotal(subtotal) {
  var total = subtotal * (1 + 0.15 + 0.095);
  return total;
}

function billTotal2(subtotal) {
  var total= subtotal + (0.15 * subtotal) + (0.095 * subtotal);
  return total;
}

console.log(billTotal(100));
console.log(billTotal2(100));

0 个答案:

没有答案