Как бороться с точностью чисел с плавающей точкой в JavaScript?
У меня есть следующий тестовый скрипт:
function test(){
var x = 0.1 * 0.2;
document.write(x);
}
test();
Это напечатает результат0.020000000000000004
в то время как это должно просто напечатать0.02
(если вы используете свой калькулятор). Насколько я понял, это связано с ошибками в точности умножения с плавающей точкой.
У кого-нибудь есть хорошее решение, чтобы в таком случае я получил правильный результат0.02
? Я знаю, что есть такие функции, какtoFixed
или округление было бы другой возможностью, но яЯ бы хотел, чтобы на самом деле было напечатано целое число без каких-либо вырезов и округлений Просто хотел узнать, есть ли у кого-нибудь хорошее, элегантное решение.
Конечно, в противном случае яокруглим до 10 цифр или около того.