如何使用 Javascript 将整数向上或向下舍入到最接近的10

使用 Javascript,我希望将用户传递的数字四舍五入到最接近的10。例如,如果传递了7,我应该返回10,如果传递了33,我应该返回30。

93540 次浏览

Divide the number by 10, round the result and multiply it with 10 again, for example:

  1. 33 / 10 = 3.3
  2. 3.3 rounded = 3
  3. 3 × 10 = 30

console.log(Math.round(prompt('Enter a number', 33) / 10) * 10);

Math.round(x / 10) * 10

I needed something similar, so I wrote a function. I used the function for decimal rounding here, and since I also use it for integer rounding, I will set it as the answer here too. In this case, just pass in the number you want to round and then 10, the number you want to round to.

function roundToNearest(numToRound, numToRoundTo) {
return Math.round(numToRound / numToRoundTo) * numToRoundTo;
}

Where i is an int.

To round down to the nearest multiple of 10 i.e.

11 becomes 10
19 becomes 10
21 becomes 20

parseInt(i / 10, 10) * 10;

To round up to the nearest multiple of 10 i.e.

11 becomes 20
19 becomes 20
21 becomes 30

parseInt(i / 10, 10) + 1 * 10;