javascript中的圆形输出[重复]

Posted

技术标签:

【中文标题】javascript中的圆形输出[重复]【英文标题】:Round output in javascript [duplicate] 【发布时间】:2014-02-15 05:55:34 【问题描述】:

我正在开发一个计算器,希望它四舍五入到小数点后 5 位。这是我的 javascript 代码,用于获取输入输出并产生输出:

        <div class="input"> 
        Price paid per share: <input id="value1" type="text" /><br>
        Number of shares bought: <input id="value2" type="text" /><br>
        Commission/ fee's paid: <input id="value3" type="text" /><br>
        <center><input type="submit" class="submit"  onclick="output();"></center>  
    </div>
    <center><p class="result" id="result"> </p></center>

    <script type="text/javascript" language="javascript" charset="utf-8">
   function output()
       var value1 = document.getElementById('value1').value;
       var value2 = document.getElementById('value2').value;
       var value3 = document.getElementById('value3').value; 
       document.getElementById('result').innerhtml = ((parseFloat(value1) * parseFloat(value2)) + (parseFloat(value3))) / (parseFloat(value2));
    

有人知道如何将我的输出/结果四舍五入到小数点后 5 位吗?谢谢。

【问题讨论】:

parseFloat() 可能没有理由,也可能有充分的理由不这样做。注意"4" * "3" == 12 【参考方案1】:
var num=4.5960797;
var n=num.toFixed(5);

【讨论】:

【参考方案2】:

尝试使用toFixed

var result = ((parseFloat(value1) * parseFloat(value2)) + (parseFloat(value3))) / (parseFloat(value2));
document.getElementById('result').innerHTML = result.toFixed(5);

【讨论】:

【参考方案3】:

使用Math.round(num * 100000) / 100000

【讨论】:

这会将结果保留为数字,而不是字符串,浮点表示稍后可能会导致字符串表示不正确。此外,像1 这样的值将显示为1 而不是1.00000【参考方案4】:
var result=Math.round(yourValue*100000)/100000

【讨论】:

这会将结果保留为数字,而不是字符串,浮点表示稍后可能会导致字符串表示不正确。此外,像1 这样的值将显示为1 而不是1.00000

以上是关于javascript中的圆形输出[重复]的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript数组未显示终端中的所有输出值[重复]

在 d3 javascript 中的圆形对象内添加图像?

即循环中的javascript与循环中的chrome [重复]

Java游戏中的圆形碰撞检测

比较javascript中的值[重复]

用java编写任意输入一行字符串。将原字符串中的重复字符删除后输出,同时输出都有哪些字符是重复的。