本文介绍了JS舍入到小数点后两位的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图将返回的数字限制为仅两位小数,但是此代码对我不起作用;
I am trying to limit the returned number to be only 2 decimal places but this code isn't working for me;
function myFunction() { var x = document.getElementById("mySelect").value; document.getElementById("demo").innerHTML = "Result is: " + x * 1.09; value = valToRound.toFixed(2);}
我在做什么错
推荐答案在JS浏览器控制台中键入
Typing in the JS Browser console
x = 2.71828 x.toFixed(2) "2.72"很显然 .toFixed(2)有用
您做错的是四舍五入< 打印答案后,并且未使用正确的变量。
What you did wrong was rounding after printing the answer, and not using the correct variables.
document.getElementById("demo").innerHTML = "Result is: " + x * 1.09; value = valToRound.toFixed(2);养成将字符串转换为带有 parseFloat()。在JS中,除非您先转换为数字,否则'2'*'2'为'4',但'2'+'2'为'22'。
It is also a good idea to get in the habit of converting strings to numbers with parseFloat(). In JS, '2'*'2' is '4' but '2'+'2' is '22', unless you first convert to number.
如果您可以这样操作:
function myFunction() { var x = parseFloat(document.getElementById("mySelect").value); var valToRound = x * 1.09; var value = valToRound.toFixed(2); document.getElementByID("demo").innerHTML = "Result is: " + value; }更多推荐
JS舍入到小数点后两位
发布评论