Подтвердить что ты не робот

Javascript с округлением до ближайшего 10

Я хотел бы округлить целые числа, используя JavaScript. Например:

10 = 20
11 = 20
19 = 20
24 = 30
25 = 30
29 = 30
4b9b3361

Ответ 1

Это должно сделать это:

Math.ceil(N / 10) * 10;

Где N - один из ваших номеров. Однако это не работает для вашего первого случая (10 раундов до 20, но почему?).

Ответ 2

Чтобы округлить число до следующего наибольшего кратного 10, добавьте его к числу до получение Math.ceil деления на 10. Умножьте результат на десять.

Math.ceil((п + 1)/10) * 10;

1->10
2->10
3->10
4->10
5->10
6->10
7->10
8->10
9->10
10->20
11->20
12->20
13->20
14->20
15->20
16->20
17->20
18->20
19->20
20->30
21->30
22->30
23->30
24->30
25->30
26->30
27->30
28->30
29->30
30->40
35-> 40
40-> 50
45-> 50
50-> 60
55-> 60
60-> 70
65-> 70
70-> 80
75-> 80
80-> 90
85-> 90
90-> 100
95-> 100
100-> 110

Ответ 3

или

var i = 20;
var yourNumber = (parseInt(i/10, 10)+1)*10;

Ответ 4

Math.round() округляет до ближайшего целого. Чтобы округлить до любой другой цифры, разделите и умножьте на десять.

Один из таких методов:

function round(num,pre) {
    if( !pre) pre = 0;
    var pow = Math.pow(10,pre);
    return Math.round(num*pow)/pow;
}

Вы можете сделать аналогичные функции для floor и ceiling. Однако, независимо от того, что вы делаете, 10 никогда не будет округлено до 20.