Heim > Web-Frontend > js-Tutorial > Wie rundet man Zahlen in JavaScript genau auf zwei Dezimalstellen?

Wie rundet man Zahlen in JavaScript genau auf zwei Dezimalstellen?

Patricia Arquette
Freigeben: 2024-12-28 16:55:11
Original
762 Leute haben es durchsucht

How to Accurately Round Numbers to Two Decimal Places in JavaScript?

Zahlen bei Bedarf auf zwei Dezimalstellen runden

Beim Umgang mit numerischen Daten ist es oft notwendig, Werte auf bestimmte Dezimalstellen zu runden. In manchen Fällen möchten wir jedoch nur runden, wenn der Wert nicht bereits auf die gewünschte Genauigkeit gerundet ist.

Stellen Sie sich das folgende Szenario vor: Sie möchten Zahlen auf höchstens zwei Dezimalstellen runden, aber nur, wenn es nötig ist . Zum Beispiel:

Input:
10
1.7777777
9.1

Output:
10
1.78
9.1
Nach dem Login kopieren

Math.round() verwenden

Eine mögliche Lösung ist die Verwendung der Math.round()-Methode:

let roundedNum = Math.round(num * 100) / 100;
Nach dem Login kopieren

Bei diesem Ansatz wird die Zahl mit 100 multipliziert, bevor sie auf eine ganze Zahl gerundet wird (was den Dezimalpunkt effektiv um zwei Stellen nach rechts verschiebt) und dann zurückdividiert durch 100, um den Wert mit zwei Dezimalstellen zu erhalten.

Verwenden von Number.EPSILON

Dieser Ansatz behandelt Grenzfälle jedoch nicht korrekt. Beispielsweise würde 1,005 auf 1,01 anstatt auf 1,00 gerundet. Um dies zu beheben, können wir Number.EPSILON verwenden:

let roundedNum = Math.round((num + Number.EPSILON) * 100) / 100;
Nach dem Login kopieren

Number.EPSILON stellt den kleinsten Unterschied zwischen zwei Gleitkommazahlen dar, der als signifikant angesehen wird. Durch die Addition zur Zahl wird sichergestellt, dass der Wert auch in Grenzfällen korrekt gerundet wird.

Das obige ist der detaillierte Inhalt vonWie rundet man Zahlen in JavaScript genau auf zwei Dezimalstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage