如果你想与要求精度超越的JavaScript浮动(仅限64位精度),你可以考虑使用一个图书馆想在这个问题中提及的一个数字来工作:Is there a decimal math library for JavaScript?
特别是bignumber库看起来很有希望达到您的目的。
这里是一个快速演示的jsfiddle:http://jsfiddle.net/H88tS/
注意,小提琴在bignumber库链接。
$(document).ready(function() {
BigNumber.config({ DECIMAL_PLACES : 50, ERRORS : false});
var pi = new BigNumber(0, 10),
x = new BigNumber(1, 10),
two = new BigNumber(2, 10),
four = new BigNumber(4, 10);
function iterate() {
pi = pi.plus(four.dividedBy(x));
x = x.plus(two);
pi = pi.minus(four.dividedBy(x));
x = x.plus(two);
$("#pi").text(pi.toPrecision(50));
}
$('button').click(iterate);
});
它只能达到一定的小数位数,因为它只有*有一定的小数位数。换句话说,JavaScript数学的精度有限。 – Pointy