0

JavaScript で toFixed(2) メソッドを使用した結果は次のとおりです。

3,123 = 3,12
3,124 = 3,12
3,125 = 3,13
3,126 = 3,13 

それはもちろん正しいのですが、カンマの後に5個の数字が出現した場合の四捨五入(増加)のルールを変更したいです。だから私は次の結果が欲しい:

3,123 = 3,12
3,124 = 3,12
**3,125 = 3,12** (don't increase the number)
3,126 = 3,13

JavaScriptでこれを達成するにはどうすればよいですか?

4

3 に答える 3

-1

parseInt が嫌いな人のために:

function customRound(number, numDecimal)
{
    var x = number - 1/Math.pow(10, numDecimal + 1);
    return x.toFixed(numDecimal);
}

アイデアは、丸めたい数値から 0.001 を減らすことです (toFixed(2) の場合)。

しかし、私はより一般的な使用のために関数を書いたので、複雑に見えます。.toFixed(2) のみに使用する場合、customRound は次のように記述できます。

function customRound(number)
{
    var x = number - 0.001;
    return x.toFixed(2);
}
于 2018-09-06T08:48:21.557 に答える