将相乘结果限制为 2 位小数
Limit the multiplied amount result to 2 decimals
我做了一个简单的 javascript 乘以一个数额并显示结果。但是,我想将结果限制为 2 位小数。我试过使用 toFixed,但这似乎不起作用。
有谁知道如何进行这项工作?
function MultiplyTheAmount() {
var multiplier = 0.75;
var roundedMultiplier = multiplier.toFixed(2);
document.getElementById('multiplyResult').innerHTML = document.getElementById('multiplyAmount').innerHTML * roundedMultiplier;
};
MultiplyTheAmount();
<ul style="list-style:none;">
<li>Amount:</li>
<li id="multiplyAmount">119.99</li>
<li><br/></li>
<li>Multiply by:</li>
<li>0.75</li>
<li><br/></li>
<li>Result:</li>
<li id="multiplyResult"></li>
</ul>
您需要将最终结果限制为小数点后两位:
(document.getElementById('multiplyAmount').innerHTML * roundedMultiplier).toFixed(2);
将toFixed
方法应用于最终结果以消除您看到的放大floating point inaccuracy:
function MultiplyTheAmount() {
var multiplier = 0.75;
var roundedMultiplier = multiplier.toFixed(2);
document.getElementById('multiplyResult').textContent = (
+document.getElementById('multiplyAmount').textContent * roundedMultiplier
).toFixed(2);
};
MultiplyTheAmount();
<ul style="list-style:none;">
<li>Amount:</li>
<li id="multiplyAmount">119.99</li>
<li><br/></li>
<li>Multiply by:</li>
<li>0.75</li>
<li><br/></li>
<li>Result:</li>
<li id="multiplyResult"></li>
</ul>
与问题无关,但我建议在不处理 HTML
内容时使用 textContent
而不是 innerHTML
。
我做了一个简单的 javascript 乘以一个数额并显示结果。但是,我想将结果限制为 2 位小数。我试过使用 toFixed,但这似乎不起作用。
有谁知道如何进行这项工作?
function MultiplyTheAmount() {
var multiplier = 0.75;
var roundedMultiplier = multiplier.toFixed(2);
document.getElementById('multiplyResult').innerHTML = document.getElementById('multiplyAmount').innerHTML * roundedMultiplier;
};
MultiplyTheAmount();
<ul style="list-style:none;">
<li>Amount:</li>
<li id="multiplyAmount">119.99</li>
<li><br/></li>
<li>Multiply by:</li>
<li>0.75</li>
<li><br/></li>
<li>Result:</li>
<li id="multiplyResult"></li>
</ul>
您需要将最终结果限制为小数点后两位:
(document.getElementById('multiplyAmount').innerHTML * roundedMultiplier).toFixed(2);
将toFixed
方法应用于最终结果以消除您看到的放大floating point inaccuracy:
function MultiplyTheAmount() {
var multiplier = 0.75;
var roundedMultiplier = multiplier.toFixed(2);
document.getElementById('multiplyResult').textContent = (
+document.getElementById('multiplyAmount').textContent * roundedMultiplier
).toFixed(2);
};
MultiplyTheAmount();
<ul style="list-style:none;">
<li>Amount:</li>
<li id="multiplyAmount">119.99</li>
<li><br/></li>
<li>Multiply by:</li>
<li>0.75</li>
<li><br/></li>
<li>Result:</li>
<li id="multiplyResult"></li>
</ul>
与问题无关,但我建议在不处理 HTML
内容时使用 textContent
而不是 innerHTML
。