2015-01-15 2 views
1

Если я использую окна калькулятор для расчетаJavascript - простое деление приводит к ошибкам

(1.75 + 3/1.75)/2 он уступает =

1,7321428571428571428571428571429

Если бы я сделать то же самое с Javascript он уступает

1.732142857142857206298458550009

Таким образом, в позиции 22 после десятичной точки результат становится некорректный ...142857... против ...206298...

var a = 1.75; 
var res = (a+3/a)/2; 
console.log(res.toFixed(30)); 

Как я могу сделать мое деление точным для 31 цифр после десятичной запятой?

+0

Проверить [это сообщение] (http://stackoverflow.com/questions/4288821/how-to-deal-with -Большой-номер-в-JavaScript). – DontVoteMeDown

ответ

1

Javascript не может делать это как таковое, поскольку его двойные переменные имеют ограниченную точность. Вам нужно будет использовать внешнюю библиотеку для обработки операций с большими точками точности, например: Javascript Bignum

Смежные вопросы