Javascript используя раунд до ближайшей 10

javascript

49330 просмотра

4 ответа

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

10 = 10
11 = 20
19 = 20
24 = 30
25 = 30
29 = 30
Автор: mark denfton Источник Размещён: 12.11.2019 09:45

Ответы (4)


118 плюса

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

Math.ceil(N / 10) * 10;

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

Автор: alexn Размещён: 13.06.2012 08:05

23 плюса

Чтобы округлить число до следующего наибольшего числа, кратного 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
Автор: kennebec Размещён: 13.06.2012 08:24

9 плюса

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.

Автор: Niet the Dark Absol Размещён: 13.06.2012 08:06

7 плюса

или это

var i = 20;
var yourNumber = (parseInt(i/10, 10)+1)*10;
Автор: silly Размещён: 13.06.2012 08:06
Вопросы из категории :
32x32