Hi!
ich erhalte bei folgendem Beispiel fehlerhafte Werte, sobald der
Index meiner Auswahlliste 7 oder größer ist.
Für elm.selectedIndex = 6 erhalte ich noch den richtigen Wert 1.12
Für elm.selectedIndex = 7 erhalte ich 1.1400000000000001
Das sieht mir nach einem typischen Rundungsfehler aus. Das ist leider nicht zu verhindern und kommt in jeder Programmiersprache vor - damit hab ich mich auch schon oft rumgeschlagen. Hängt irgendwie damit zusammen, wie Fließkommazahlen als byte-Werte verarbeitet werden.
case 3: case 4: case 5: case 6: case 7: case 8: case 9: case 10:
Hier würde ich "default:" benutzen.
return sum;
Versuch mal, den Wert vorher zu runden:
return Math.round(sum*100)/100;
(Für mehr Stellen einfach ein paar Nullen anhängen :)
VG Simon