如果我们给出更多的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