Mit Javascript möchte ich eine von einem Benutzer übergebene Zahl auf die nächste 10 runden. Wenn beispielsweise 7 übergeben wird, sollte ich 10 zurückgeben, wenn 33 übergeben wird, sollte ich 30 zurückgeben.
Antworten:
Teilen Sie die Zahl durch 10, runden Sie das Ergebnis und multiplizieren Sie es erneut mit 10:
var number = 33;
console.log(Math.round(number / 10) * 10);
Math.round(x / 10) * 10
Wo iist ein int.
Auf das nächste Vielfache von 10 abrunden, dh
11 wird 10
19 wird 10
21 wird 20
parseInt(i / 10, 10) * 10;
Auf das nächste Vielfache von 10 aufrunden, dh
11 wird 20
19 wird 20
21 wird 30
parseInt(i / 10, 10) + 1 * 10;
Ich brauchte etwas Ähnliches, also schrieb ich eine Funktion. Früher habe ich für dezimal die Funktion Runden hier und da ich es auch zum Runden ganzer Zahl verwenden, werde ich es als Antwort auch hier eingestellt. In diesem Fall geben Sie einfach die Nummer ein, die Sie runden möchten, und dann 10, die Nummer, auf die Sie runden möchten.
function roundToNearest(numToRound, numToRoundTo) {
return Math.round(numToRound / numToRoundTo) * numToRoundTo;
}
.25, können Sie einfach .25als zweites Argument verwenden. Wenn Sie die Formeln in den anderen Antworten verwenden würden, müssten Sie 4als zweites Argument verwenden, wenn Sie aufrunden möchten .25, was nicht intuitiv ist.
.25als function roundTo(x,y){return Math.round(x / y) * y}
Math.floor, wenn Sie ein Aufrunden verhindern möchten