如果我们给出更多的16位数字,如何获得正确的整数值?
在我的代码中,我得到的输入值(整数变量)多于16位数字无法获得正确的值。
HTML:
脚本:
$("#number_id").blur(function(){ var ns = $("#number_id").val(); alert(Number(ns)) });
任何人有解决方案请帮助我。
http://jsfiddle.net/Qntr2/
JavaScript专门使用64位浮点数,这意味着您只能获得大约16位十进制数字的精度。 这是数字类型的基本限制。
您可以将数字存储为字符串。 如果你需要用这么大的数字进行计算,你将不得不使用一个实现任意精度算术的库。
javascript中的所有数字最多可支持9007199254740992,即16位数字。 如果存储的不止于此,则会被解释为错误。 ( http://www.2ality.com/2012/07/large-integers.html )
最好的方法是将其存储到字符串中。 如果你想用大整数做一些基本的东西,你可以使用这个https://github.com/jtobey/javascript-bignum