Ich möchte ganze Zahlen mit JavaScript runden. Zum Beispiel:
10 = 10
11 = 20
19 = 20
24 = 30
25 = 30
29 = 30
Ich möchte ganze Zahlen mit JavaScript runden. Zum Beispiel:
10 = 10
11 = 20
19 = 20
24 = 30
25 = 30
29 = 30
Antworten:
Dies sollte es tun:
Math.ceil(N / 10) * 10;
Wobei N eine Ihrer Zahlen ist. Dies funktioniert jedoch nicht für Ihren ersten Fall (10 Runden bis 20, aber warum sollte es?).
Math.ceil((N+1) / 10) * 10;
Math.ceil(10 / 10) * 10 = 10)
Um eine Zahl auf das nächstgrößere Vielfache von 10 zu runden, addieren Sie eins zur Zahl, bevor Sie den Math.ceil einer Division mit 10 erhalten. Multiplizieren Sie das Ergebnis mit zehn.
Math.ceil ((n + 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
Math.round()rundet auf die nächste ganze Zahl. Um auf eine andere Ziffer zu runden, dividieren und multiplizieren Sie mit Zehnerpotenzen.
Eine solche Methode ist folgende:
function round(num,pre) {
if( !pre) pre = 0;
var pow = Math.pow(10,pre);
return Math.round(num*pow)/pow;
}
Sie können ähnliche Funktionen für floorund erstellen ceiling. Egal was Sie tun, es 10wird nie rund 20.
prein diesem Beispiel?
preEntscheidung.
oder dieses
var i = 20;
var yourNumber = (parseInt(i/10, 10)+1)*10;
10 = 10
10rundet sich möglicherweise auf20? 15, ja; 14 und darunter würde auf runden10.