Здравствуйте, OlegL, Вы писали:
OL>Почему
OL>b = 100 — 91.02;
OL>выдаёт b = 8.980000000000004 ?
Потому что большинство десятичных дробей не переводятся в двоичные без потерь.
OL>Как от этого избавиться?
Если в JS нет классов точной математики, то вот так:
a=100, b=91.02, c=(a*100 — b*100) / 100.
Но при делении на 100 может снова вылезти ошибка.
Если это у тебя деньги, храни их в копейках.