Javascript向上舍入到最接近的.5

use*_*628 4 javascript rounding

如何将数字舍入到最接近的.5?例如:

5.4 -> 5.5
5.6 -> 6
6.1 -> 6.5
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止尝试的内容:

var number = 5.1;
var roundednumber = Math.round(number*2)/2 
Run Code Online (Sandbox Code Playgroud)

p.s*_*w.g 15

这就是Math.ceil(天花板)方法的用途:

Math.ceil(x)函数返回大于或等于数字"x"的最小整数.

例如:

var number = 5.1;
var roundednumber = Math.ceil(number*2)/2; // 5.5
Run Code Online (Sandbox Code Playgroud)

但请注意,它也会使负数增加(更积极):

var number = -5.1;
var roundednumber = Math.ceil(number*2)/2; // -5
Run Code Online (Sandbox Code Playgroud)

如果你想要从0舍入,你必须做这样的事情:

var number = -5.1;
var roundednumber = (number > 0 ? Math.ceil : Math.floor)(number*2)/2; // -5.5
Run Code Online (Sandbox Code Playgroud)