如何舍入存储在变量中的两个函数返回的总和?

时间:2014-03-03 00:59:16

标签: javascript math

我正在为表单使用函数calculateTotal()。在此函数中是一个变量,用于存储另外两个函数返回的总和。根据表单中的用户输入,总和可以包含几个小数点。即76.6666666666。我想知道我是否可以在显示之前对这笔金额进行舍入?我试过Math.round(theWholeThing),不起作用。 我不知道如何对数字进行舍入,因为它可以随着用户对表单的输入而改变。 与parseint相同。

function calculateTotal()
{    
    var theWholeThing = areaTimesType() + getSetUp();       
    var divobj = document.getElementById('totalPrice');
    divobj.style.display='block';
    divobj.innerHTML = "Total Price For grow space $"+theWholeThing + "\u00A0 \u00A0per month";
}

3 个答案:

答案 0 :(得分:3)

尝试toFixed

(76.6666666666).toFixed(); => 77
(76.6666666666).toFixed(1); => 76.7

您的代码将如下所示

function calculateTotal()
{    
    var theWholeThing = areaTimesType() + getSetUp();       
    var divobj = document.getElementById('totalPrice');
    divobj.style.display='block';
    divobj.innerHTML = "Total Price For grow space $"+(theWholeThing).toFixed(2) + "\u00A0 \u00A0per month";
}

答案 1 :(得分:0)

你在哪里运行Math.round()?也许你没有捕捉到round()函数的结果。尝试类似:

divobj.innerHTML = "Total Price For grow space $"+ Math.round(theWholeThing) + "\u00A0 \u00A0per month";

更好的是,当你声明theWholeThing时,将结果四舍五入:

var theWholeThing = Math.round(areaTimesType() + getSetUp());

答案 2 :(得分:0)

试试这个:

For 2 digit =  Math.round(num * 100) / 100
For 3 digit = Math.round(num* 1000)/1000

您可以查看此功能的详细信息

About Math.round