如何找到最接近的nb.5值?
不包括.0值,
示例
round(1.0) = 1.5
round(1.99) = 1.5
round(2.0) = 2.5
答案 0 :(得分:5)
您可以将0.5
添加到Math.floor()
返回的值中:
const round = (number) => Math.floor(number) + 0.5
console.log(round(1.0))
console.log(round(1.99))
console.log(round(2.0))
答案 1 :(得分:4)
Math.floor(value) + 0.5
应该这样做。
此外,您应该澄清自己的规格...由于2的最接近0.5值是1.5和2.5,因此它们都处于相同的“距离”。
我了解您的示例通过接近最接近的0.5上限来处理这种情况,但这真的是您想要的吗?
答案 2 :(得分:0)
function round(num) {
return Math.round((num % 10)) + 0.5
}
console.log(round(1));
console.log(round(1.99));
console.log(round(2));
答案 3 :(得分:0)
要获得预期的结果,请使用下面的选项使用Math.trunc-https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc
let round = (val) => Math.trunc(val) + 0.5
console.log(round(1.99))
console.log(round(1))
console.log(round(2))