虽然我了解 JavaScript 中的 Math.round/ceil/floor 函数,但我一直无法想出解决此问题的有效函数。
我想要做的是将任何整数四舍五入为 3 的倍数,或者实际上是我选择的任何倍数。
给定“3”的倍数时返回数字的要求如下:
0 returns 0
6 returns 6
7 returns 6
8 returns 9
22 returns 21
23 returns 24
等等...等等...所以基本上,返回的值将始终是给定参数的倍数,在本例中为“3”。
谢谢大家。
最佳答案
您可以使用像这样的简单函数:
function roundMultiple3(num) {
return(Math.round(num / 3) * 3);
}
除以 3,四舍五入到最接近的整数,然后再次乘以 3 以恢复完整值。
或者允许您指定多个的通用版本:
function roundMultiple(num, multiple) {
return(Math.round(num / multiple) * multiple);
}
关于javascript - 我怎样才能在javascript中四舍五入到一个数字的倍数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10728934/