在JavaScript中打印一个数字时,我只希望在小数点后只保留三位数。我使用的代码显示小数点后超过8位数。任何人都可以指导我如何使用JavaScript删除剩余的数字。
这是我的JavaScript代码:
function doMath() {
var nvalue; var amount;
var price= 0.27;
nvalue = document.getElementById("message").value;
amount=(nvalue*price);
document.getElementById("total").value=amount ;
}
输出:
4.050000000000001
我想:
4.050
任何帮助将不胜感激,谢谢。
答案 0 :(得分:1)
请试试这个
amount=amount.toFixed(3);
答案 1 :(得分:1)
使用javascript的toFixed()方法
toFixed()方法将数字转换为字符串,保持指定的小数位数。
var amount= amount.toFixed(3); //3 digits after decimal
答案 2 :(得分:0)
使用toFixed()
:
amount = amount.toFixed(3);
答案 3 :(得分:0)
我不建议使用.toFixed()
来舍入数字,因为它会返回字符串。在你的情况下,这可能是相当不错的,因为它看起来像是用于显示,但一般来说,做一些数学:
function betterToFixed(num, decPlaces) {
var factor = Math.pow(10, decPlaces);
return Math.round(num * factor) / factor;
}
答案 4 :(得分:0)
amount= amount.toFixed(3);
这将为您提供所需的解决方案