Дроби хранятся в компьютерах в таком виде, что часто могут быть представлены неточно. В этом случае вас может ждать некоторый сюрприз, когда банальная операция выдает странный результат. Пример:
let a = 0.1 + 0.2;
alert(a); // выведет 0.30000000000000004
Для борьбы с таким поведением можно
применить специальный метод toFixed
,
выполняющий округление до заданного
знака в дробной части. Давайте округлим
наш результат:
let a = 0.1 + 0.2;
alert(a.toFixed(2)); // выведет '0.30'
Метод toFixed
отдает результат в виде
строки. Можно преобразовать его результат
в число:
let a = 0.1 + 0.2;
alert(+a.toFixed(2)); // выведет 0.3
Проверьте, что будет результатом следующей операции:
alert(0.1 * 0.2);
Проверьте, что будет результатом следующей операции:
alert(0.3 - 0.1);