猿问

从 JavaScript 中的数字中减去增值税

我是 JS 和这段代码的初学者


$('.brutto_amount').each(function (index, value) {

    let amount = $(this).text().replace(' brutto / rok', '').replace('(', ''); console.log(amount);

    if (discountType == 0) {

        let newAmount = (amount - discountValue).toFixed(2);

        if(newAmount < 0) newAmount = 1;

        $(this).html(`${newAmount} brutto / rok `);

    } else if (discountType == 1) {

        let newAmount = (amount - ((parseInt(amount) * parseInt(discountValue)) / 100)).toFixed(2);

        if(newAmount < 0) newAmount = 1;

        $(this).html(`${newAmount} brutto / rok `);

    }

});

到目前为止工作正常。


如何从变量中减去 23% 的增值税newAmount并将其四舍五入到小数点后两位?


慕容3067478
浏览 71回答 1
1回答

BIG阳

我解决了类似于 Lapskaus在评论中提到的问题:首先是一道简单的数学题,如果你的newAmount值是brutto值,计算netto,vat为23%,就这么简单newAmount / 123 * 100。用于calculatedNetto.toFixed(2)将其四舍五入为 2 个数字。但请注意,由于浮点精度,JS 中的计算会出现舍入误差。有关此问题以及如何规避该问题的更多信息,请阅读此。newAmount 将是一个 brutto 值,它将是 123%,您要从中计算 100% 的值。你从 123 中减去 23%,这太多了
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答