0

我有以下脚本来计算库存值。但是,它是四舍五入到最接近的整数,而不是小数点,而不是小数点后两位。输出格式正确,但我认为问题始于将输入读入 JS 的方式。输入表单的格式已准备好接受十进制值。计算工作正常,但不能输出小数。我很感激任何帮助!

function EI() {
var cost,
BItotal,
TPtotal,
TStotal,
total1,
total2,
total3;

cost = 1;
BItotal = document.getElementById(''InputBI'').value;
TPtotal = document.getElementById(''InputTP'').value;
TStotal = document.getElementById(''InputTS'').value;
total1 = cost * parseInt(BItotal);
total2 = total1 + parseInt(TPtotal);
total3 = total2 - parseInt(TStotal);
document.getElementById(''total_cost'').innerHTML = total2.toFixed(2);

读出的 HTML 如下:

<input onclick="EI();" type="button" value="Calculate"/><p id="total_cost"></p>
4

1 回答 1

9

解决方案

parseInt()当你想要一个浮点数时不要使用,使用parseFloat().


解释

解析整数()

parseInt()将自动四舍五入您的小数以创建Integer您发送的值的输出。

解析浮动()

parseFloat() “解析一个字符串参数并返回一个浮点数。” -MDN

于 2013-06-25T15:25:53.073 回答