【发布时间】:2017-11-03 15:25:49
【问题描述】:
我必须将服务费 (10%) 和增值税 (8%) 加到服务中,我不确定按百分比增加数字的正确方法。
例如:服务费用为 1000 美元,我需要加 10% 加 8%。我正在努力用三种不同的方式来实现这一目标。哪种方式是正确的?
var service_charge = 10; // percent
var vat = 8; // percent
var price = 1000;
// OPTION 1
var tmp1 = price * (service_charge / 100);
var tmp2 = price * (vat / 100);
var total_1 = price + tmp1 + tmp2;
// OPTION 2
var tmp3 = price * (service_charge / 100);
var sub_total = price + tmp3;
var tmp4 = sub_total * (vat / 100);
var total_2 = sub_total + tmp4;
// OPTION 3
var tmp5 = price * ((service_charge + vat) / 100);
var total_3 = price + tmp5;
console.log(total_1);
console.log(total_2);
console.log(total_3);
https://jsbin.com/povama/edit?js,console
我认为“选项 2”是正确的,但我真的很想确定。
【问题讨论】:
-
选项 2 对我来说似乎是正确的,但这最终是一个税法问题。选项 1 和 3 给出相同的结果。
-
这真的取决于业务逻辑:增值税应该在之前还是在服务费之后应用?您需要询问产品所有者或负责这些决定的任何人。顺便说一下,选项 1 和 3 是相同的。
-
@Obsoletely 增值税是在服务费之后。谢谢。
标签: javascript math percentage business-logic