以下代码用于使用 java 脚本从百分比值和金额值返回增值税值,但不准确。
var vat=((25*100)/447);
vat=vat.toFixed(1);
好的,为了提供帮助,您需要指定您正在使用的详细信息。增值税税率是多少?您是根据总值(包括增值税)还是净值(不包括增值税)工作。
var nVatRate = 0.2;// This is the rate of VAT in the UK at present, 20%
function VatAmountFromGross(nGrossAmount){
return nGrossAmount / (1 + (1 / nVatRate));
}
function VatAmountFromNet(nNetAmount){
return nNetAmount * (1 + nVatRate);
}
所以,改变增值税率以匹配你的,我猜是 25% (0.25)。
使用“toFixed(1)”将确保该值固定为小数点后 1 位 - 通常增值税需要两位小数。如果您对值求和,您还会遇到舍入问题,这些都是无济于事的。
而不是这个:
var vat=((25*100)/447);
vat=vat.toFixed(1);
您应该使用确切的总金额:
var vat=((24.585*100)/447);
vat=vat.toFixed(3);
在将值保存在数据库中时,您应该做的是将每个值四舍五入到小数点后三位,无论是增值税、百分比还是总金额。为了将其呈现给用户/客户,您可以将其四舍五入到小数点后一位或两位.