【发布时间】:2021-07-26 05:28:15
【问题描述】:
要使用 JavaScript 中的 .toFixed() 方法对十进制数进行四舍五入,我希望 ...5 的结尾应该四舍五入。
如示例所示,在 5.555 的情况下,.toFixed(2) 方法将产生 5.55,尽管由于舍入标准,我的预期是 5.56。
是否有任何内置的 JavaScript 或 jQuery 方法用于按照国际数学舍入对数字进行舍入?
编辑:使用Math.round() 是可以接受和可以理解的,只是数字需要乘除。我很好奇是否有任何现有的简化函数,例如toFix(),只是在5 的舍入上提供了解决方案。当然可以为它编写一个函数或使用具有适当参数化的 Math.round。
<!DOCTYPE html>
<html>
<body>
<p>Click the button to display the fixed number.</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
function myFunction() {
var num = 5.555;
var n = num.toFixed(2);
document.getElementById("demo").innerHTML = n;
}
</script>
</body>
</html>
【问题讨论】:
-
上述问题共有96个答案。我认为这是足够的多样性。此外,jQuery 是一个用于操作 DOM/CSSOM 的库,而不是用于操作数字的库。
-
@HereticMonkey 好吧,我一直在寻找 .toFix() 的确切内置替代方法,例如一个新函数:.toFixProperRounding(...)。虽然可以使用 Math.round 并且可以理解,但是取整后的数字需要相乘和分布。我期待一个简化的内置方法,例如带有上述示例解决方案的 toFix()。
标签: javascript jquery