Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当结果为四舍五入(1.10 1.30)时,不显示小数点后的第二位,我该怎么做?_Javascript - Fatal编程技术网

Javascript 当结果为四舍五入(1.10 1.30)时,不显示小数点后的第二位,我该怎么做?

Javascript 当结果为四舍五入(1.10 1.30)时,不显示小数点后的第二位,我该怎么做?,javascript,Javascript,我的程序(使用Math.round)在结果为四舍五入(例如:1.10,1.30)时不显示第二位小数,而在结果为非四舍五入(例如:1.24,2.47)时显示是。如何改变这一点 function calcAmount2() { var userAmount2 = document.getElementById("amount2").value; if (userAmount2 = Number(amount2.value)) { document.getElementById("ma

我的程序(使用Math.round)在结果为四舍五入(例如:1.10,1.30)时不显示第二位小数,而在结果为非四舍五入(例如:1.24,2.47)时显示是。如何改变这一点

function calcAmount2() {
  var userAmount2 = document.getElementById("amount2").value;
  if (userAmount2 = Number(amount2.value)) {
    document.getElementById("marginAmount2").textContent =
      Math.round(userAmount2 * 3) / 100 + "€";
  }
}
(预期)1.10,1.30,而不是(实际)1.11.3(数学轮(用户数量2*3)/100)。固定(2)+“欧元”


toFixed将数字设置为始终有2个小数。

我相信这是


您希望使用
.toFixed(2)
,尽管您可能知道结果将是一个
字符串

我不确定您的答案有多具体,但我建议您改用此选项:

const res = Number(Math.round(userAmount2 +'e2')+'e-2');
这是因为toFixed对于某些值(如21.005)存在舍入问题

让我在这里向你证明:


console.log(数字(数学四舍五入(20.005++'e2')++'e-2'));

控制台日志(20.005.toFixed(2))JavaScript没有重要位置。您可以使用toFixed()。。。太懒了,找不到可能重复的答案,请不要只发布代码答案。解释你的答案并添加相关参考资料。太棒了!简单高效。你是最棒的。是的!pmiller3。如果我的英语好的话,简短而准确。你是一个“独一无二”的人。谢谢你@PhilippeDelestan!一定要向上投票并选择一个答案——这三个答案似乎都是值得的。你说得对,高俊!存在三位小数的舍入值问题。但是,我们可以看到欧元也很酷,有时只是。因此,我将测试您的解决方案,但我不理解此代码。“e2”和e-2的含义是什么"? 我是javascript的初学者,我更喜欢当我理解我所做的事情时去做。@PhilippeDelestan啊,我一定错过了
e
上的那部分。在科学/数字符号中,e指的是数字,乘以后缀的幂10!因此,
e2
意味着x10^2,而
e-2
意味着x10^-2。我基本上是在小数点上用两位数(x100)来“缩放”数字,四舍五入数值,然后再乘以(10^-2),以避免所有的浮点问题。是的,我非常理解。谢谢你,高俊。