使用Math.Round获取可被5整除的数字

时间:2011-12-13 20:40:11

标签: javascript math rounding

我有一个介于0和100之间的数字变量。它可能类似于83.333334。

我想使用Math.Round对数字进行舍入(例如Math.round(83.333334);)。我该怎么做才能使结果总是被5整除(即在[0,5,10,15 ...... 85,90,95,100]中设置?)

5 个答案:

答案 0 :(得分:27)

除以5,围绕它,乘以5。

alert(Math.round(83 / 5) * 5);

jsFiddle Demo

答案 1 :(得分:2)

使用modulus operator将您的号码“舍入”为5的倍数,请参阅下面的示例。

 var x = Math.round(83.333334);

 x = x - (x % 5); 

如果你想“向零”(并且负数的正确值也是如此),请使用以下内容:

 x = Math[x < 0 ? 'ceil' : 'floor'] (x/5) * 5;

答案 2 :(得分:2)

function roundDownToMultiple(number, multiple) {
    return number - (number % multiple);
}   

roundDownToMultiple(86, 5); // 85

roundDownToMultiple(89, 5); // 85

roundDownToMultiple(96, 5); // 95

答案 3 :(得分:2)

使用此Math.round(Math.floor(Math.random() * 100) / 5) * 5您可以将数字整除为5。

  • 100 - 是结果的范围。

答案 4 :(得分:1)

试一试。

Math.round(val / 5) * 5;