Hallo,
Aber weder hat 21.951 3 Stellen nach dem Komma, noch 21.95 2 Stellen.
Beide lassen sich als double nicht darstellen.
Warum nicht?
weil diese Werte im IEEE-float- oder IEEE-double-Format nicht exakt darstellbar sind. Das geht nur bei Zahlen, die als Summe von Zweierpotenzen exakt darstellbar sind. Alles andere nur näherungsweise.
Deswegen sollte man bei sowas immer über toFixed gehen, bei Geld vielleicht sogar nur über 2 ganze Zahlen.
Was bedeutet hier "2 ganze Zahlen"?
Die Rechnung mit Integerwerten durchführen, z.B. Geldbeträge nicht in Euro, sondern in Cent speichern und verarbeiten (solange es nur um Additionen geht).
Ciao,
Martin
--
Dieser Satz wurde in mühsamer Kleinstarbeit aus einzelnen Wörtern zusammengesetzt.
(Hopsel)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
Dieser Satz wurde in mühsamer Kleinstarbeit aus einzelnen Wörtern zusammengesetzt.
(Hopsel)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(