圆形浮动值,6不是5

时间:2015-05-05 10:19:29

标签: javascript

我需要一些帮助,我有一个很大的漂浮值(例如:18.235555)。

在某些国家/地区,向上舍入从6开始,而不是从5开始。

我知道只使用2位小数,但我需要不同的东西:

18.235555 = 18.24

但是这个

18.23666 = 18.24

$('#val').html( Number(Math.round(1.005+'e2')+'e-2' ) );

示例:现在我有[https://jsfiddle.net/tevez15/ywm8bonp/][1]

var n = 1.665;
(Math.round( n * 100 )/100 ).toString()

解决方案:[1]:https://jsfiddle.net/tevez15/ywm8bonp/

1 个答案:

答案 0 :(得分:1)

因为有可能再次回答我想以适当的方式制定我的解决方案。

您可以使用以下代码来实现对数字的舍入方式:

var myRounding = function(value, decimalplaces) {
    var decFac = decimalFactor(decimalplaces);
    var facVal = value * decFac;
    if(facVal - Math.floor(facVal) < 0.6) { 
        return Math.floor(facVal) / decFac;
    } 
    return Math.ceil(facVal) / decFac;
}

var decimalFactor = function(decimalplaces) {
    if(!decimalplaces)
        decimalplaces = 0;
    return Math.pow(10,decimalplaces);
}