虽然我了解 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/