2017-06-29 22 views
-5

Ich möchte eine ganze Zahl mit Javascript runden.Wie man eine Ganzzahl aufrunden Javascript

Ich habe eine JSON, die eine Menge z. B. 7435 abrufen, aber ich möchte es auf 7500 runden, so dass ich in einer einfachen mathematischen Funktion verwenden kann. Irgendwelche Ideen? Ursache Runde und Ceil funktionieren nur mit Dezimalzahlen.

+1

Division durch 100, rund, 100 – Will

+1

Division durch 100 dann um multiplizieren und dann multipliziert mit 100. Hat mehr Grundrechen jemand beibringen? – Pointy

+1

Auch warum sollte 7435 Runde ** bis ** 7500? – Pointy

Antwort

0

können Sie verwenden, um die Math.ceil Funktion

Math.ceil(7435/100)*100; 

Referenz: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil

+1

Bitte verweisen Sie nicht auf w3schools, [* MDN *] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/ceil) und [* ECMA-262 *] (http://www.ecma-international.org/ecma-262/8.0/index.html#sec-math.ceil) sind sehr bevorzugt. – RobG

+0

Cool @RobG, warum? – hardkoded

+1

ECMA-262 ist die normative Referenz (es ist die Sprachspezifikation), aber kann ein bisschen turbulent sein. MDN ist ein öffentliches Wiki, das gut gepflegt ist und von sehr kenntnisreichen Mitwirkenden stammt. Obwohl es nicht perfekt ist, hat es einige ausgezeichnete Informationen über Kompatibilität, Pollyfills und Links zu Standards. w3schools ist eine kommerzielle Seite, die sich stark verbessert hat, aber anscheinend fehlt es an der umfangreichen Auswahl an Beiträgen und Informationen, die bei MDN verfügbar sind. Aber das ist nur meine Meinung. ;-) – RobG

0

Sie diese Formel verwenden:

x = Math.floor((x+99)/100)*100; 

oder

x = Math.ceil(x/100) * 100; 

oder gehen Sie etwas Mathe lernen :-)

0

Math.ceil(number/100) * 100 sollte funktionieren. Wenn du Math.ceil (7435/100) machst, erhältst du 75 und multipliziert mit 100 ergibt 7500. Ceil funktioniert nicht nur mit Dezimalzahlen.

var rounded = Math.ceil(7435/100) * 100; 
 
console.log(rounded);