Javascript中的parseInt行为
例如,我打开终端浏览器Chrome 我这样写:Javascript中的parseInt行为,javascript,parsing,Javascript,Parsing,例如,我打开终端浏览器Chrome 我这样写: var y = "11000011010101011"; 11000011010101011 11000011010101012 我期望11000011010101011,但它返回我11000011010101012 有人知道为什么吗?Javascript中的每个数字都表示为一个数字。JavaScript最多只能精确表示9007199254740991 2^53-1的整数。一旦超过这个限制,就会失去精度。Javascript中的每个数字都表示为一
var y = "11000011010101011";
11000011010101011
11000011010101012
我期望11000011010101011,但它返回我11000011010101012
有人知道为什么吗?Javascript中的每个数字都表示为一个数字。JavaScript最多只能精确表示9007199254740991 2^53-1的整数。一旦超过这个限制,就会失去精度。Javascript中的每个数字都表示为一个数字。JavaScript最多只能精确表示9007199254740991 2^53-1的整数。一旦超过该限制,就会失去精度。javascript中只有9007199254740991是安全整数。 这是一个类似的例子
9007199254740992 + 1 // 9007199254740992
9007199254740993 + 1 // 9007199254740992
9007199254740994 + 1 //9007199254740996
请查看链接以了解更多详细信息
也看到这个了吗
这是一些简单的问题,请参见其原始版本,在javascript中只有9007199254740991是安全整数。
这是一个类似的例子
9007199254740992 + 1 // 9007199254740992
9007199254740993 + 1 // 9007199254740992
9007199254740994 + 1 //9007199254740996
请查看链接以了解更多详细信息
也看到这个了吗
这是一些简单的问题,请参见第页的原始问题
Javascript中的所有数字都是64位浮点数,整数由53位mantisa表示。
因此,存储大于2^53-1且小于-2^53+1的整数时,如果不丢失精度,则无法存储该数字
您的号码大于2^53-1。即使字符串可以存储它,但为了将其存储在数字变量中,必须对其进行舍入,从而失去精度并返回一个稍有不同的数字。根据第页的说明
Javascript中的所有数字都是64位浮点数,整数由53位mantisa表示。
因此,存储大于2^53-1且小于-2^53+1的整数时,如果不丢失精度,则无法存储该数字
您的号码大于2^53-1。即使字符串可以存储它,但为了将其存储在数字变量中,必须对其进行四舍五入,从而失去精度并返回一个稍有不同的数字。我猜您的数字太大了。读一读:我想你的数字太大了。读一下:Aka.Aka。