假设我的值为15.7784514,我想不进行四舍五入地显示为15.77。
var num = parseFloat(15.7784514);
document.write(num.toFixed(1)+"<br />");
document.write(num.toFixed(2)+"<br />");
document.write(num.toFixed(3)+"<br />");
document.write(num.toFixed(10));
结果是 -
15.8
15.78
15.778
15.7784514000
如何显示15.77?
将数字转换为字符串,将数字匹配到小数点后第二位:
function calc(theform) {
var num = theform.original.value, rounded = theform.rounded
var with2Decimals = num.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0]
rounded.value = with2Decimals
}
<form onsubmit="return calc(this)">
Original number: <input name="original" type="text" onkeyup="calc(form)" onchange="calc(form)" />
<br />"Rounded" number: <input name="rounded" type="text" placeholder="readonly" readonly>
</form>
该toFixed
方法在某些情况下(与)不同而失败toString
,因此请务必小心。
我如何四舍五入到两个小数位?
我试图将大的十进制值四舍五入到小数点后两位。 我正在使用 但它并没有始终如一地满足我的要求: 我不在乎有效数字,我只想要小数点后两位。我如何使用BigDecimal做到这一点?或者还有其他类/库更适合这个?
问题内容: 如果值为,则应将其格式化为。如果是,那么应该是。 问题答案: 这是一个实用程序,可以将双精度舍入(而不是截断)双精度至小数位数。 例如: 原始版本;提防这个 这在小数位数很高(例如)或整数部分很大(例如)的极端情况下会严重崩溃。感谢Sloin指出这一点。 多年来,我一直在使用上面的方法将“不太大”的双精度取整到2或3个小数位(例如,以秒为单位的清理时间用于记录目的:27.9876543
我需要把分钟换算成小时,四舍五入到小数点后两位。我还需要在小数点后显示最多两个数字。所以如果我有650分钟,那么小时应该是10.83。 但在这种情况下,如果我的分钟数是630小时,那就是10.5000000。但我只想要10.50(四舍五入后)。我如何做到这一点?
获取以下数字集--> 当相加时,这些给出一个整数。
问题内容: 我有以下JavaScript语法: 这四舍五入为整数。如何返回两位小数的结果? 问题答案: 注-如果3位数精度很重要,请参阅编辑4 toFixed将根据超过2个小数的值为您舍入或舍入。 编辑 -正如其他人所提到的,它将结果转换为字符串。为了避免这种情况: 编辑2- 正如注释中所提到的,此函数在某种程度上会失败,例如在1.005的情况下,它将返回1.00而不是1.01。如果准确性在这个程