Sven Rautenberg: Dezimalstellen erzwingen

Beitrag lesen

Aloha again!

ausgabe = String(parseInt(Math.round(eingabe * 100)));
ausgabe = (ausgabe=="0"?"0.00":ausgabe.substring(0,ausgabe.length-2)+"."+ausgabe.substring(ausgabe.length-2,ausgabe.length));

Wo ich Antjes tolle Rundungsfunktion gesehen habe, will ich sowas natürlich auch haben, aber eben kürzer. Also hier die Variante für "Runden mit Vorkommastellen". :)

ausgabe = String(parseInt(Math.round("156" / 100)));
ausgabe = (ausgabe=="0"?"0":ausgabe+"00");

Das kann man insgesamt natürlich in eine Funktion gießen, bei der Fallunterscheidung gemacht wird (Runden auf Vorkommastellen/Nachkommastellen) und die Rundungsposition gleich mit angegeben werden kann, aber der Nachteil von allgemeinen Funktionen ist, dass sie viel allgemeines Zeugs mitschleppen müssen, welches für die konkrete Anwendung gar nicht benötigt wird. Spezialfallanpassungen lohnen sich also, weil sie die Funktion übersichtlicher machen und Ladezeit sparen. Außerdem sind kürzere Funktionen natürlich schneller abgearbeitet. :)

- Sven Rautenberg