Javascript 将多个类型字符串解析为数字时的值错误
我有以下字符串:Javascript 将多个类型字符串解析为数字时的值错误,javascript,Javascript,我有以下字符串: var x = "10207122232230383"; 当解析为整数时,我得到相同的数字+1 var y = parseInt(x, 10); console.log(y); 这将打印10207122232230384。 为什么会发生这种情况?这个数字太大,js无法将其解析为整数。这篇文章对此做了很好的解释: 从实用的角度来看,例如,您可以使用库处理javascript中的大量数据 还有其他库可以帮助您实现同样的目标,这里将详细讨论这些库: 该数字太大,js无法将其解析
var x = "10207122232230383";
当解析为整数时,我得到相同的数字+1
var y = parseInt(x, 10);
console.log(y);
这将打印10207122232230384。
为什么会发生这种情况?这个数字太大,js无法将其解析为整数。这篇文章对此做了很好的解释: 从实用的角度来看,例如,您可以使用库处理javascript中的大量数据 还有其他库可以帮助您实现同样的目标,这里将详细讨论这些库:
该数字太大,js无法将其解析为整数。这篇文章对此做了很好的解释: 从实用的角度来看,例如,您可以使用库处理javascript中的大量数据 还有其他库可以帮助您实现同样的目标,这里将详细讨论这些库:
该数字太大,无法表示为整数。您必须使用
BigNumber
库,因为Javascript没有long
类型。例如,您可以使用由开发的BigInt
库,下面我给出了一个如何使用它的示例
document.write('JavaScript中的最大值整数:'+Number.MAX\u SAFE\u integer+'
'))
x=新的BigNumber(“10207122232230383”)
document.write('您的值除以1:'+x.div(1)+'
')
document.write('您的值除以3:'+x.div(3)+'
')
该数字太大,无法表示为整数。您必须使用BigNumber
库,因为Javascript没有long
类型。例如,您可以使用由开发的BigInt
库,下面我给出了一个如何使用它的示例
document.write('JavaScript中的最大值整数:'+Number.MAX\u SAFE\u integer+'
'))
x=新的BigNumber(“10207122232230383”)
document.write('您的值除以1:'+x.div(1)+'
')
document.write('您的值除以3:'+x.div(3)+'
')
在Javascript中,除非交叉,否则为任何整数
这将是无精度的。当它与这个MAX_SAFE_整数相交时,它开始表示IEEE二进制浮点算法标准中指定的64位格式IEEE 754值
为了解决这个问题,您可以使用这个库中的任何一个,或者使用Javascript中的任何整数,除非交叉 这将是无精度的。当它与这个MAX_SAFE_整数相交时,它开始表示IEEE二进制浮点算法标准中指定的64位格式IEEE 754值
要解决这个问题,您可以使用任何一个库或。
Number。MAX\u SAFE\u INTEGER
是您可以在不“失去精度”的情况下用javascript表示的最大值。这个数字超过了那个限度。从上面的代码看,似乎传递的是int而不是原始字符串?@OliverRadini是的。修复了这个问题。@Hacketo有办法克服这个问题吗?@VanderVidi如果你不计算这个数字,就把它作为字符串,否则我想可以使用一些biginteger库。number.MAX\u SAFE\u INTEGER
是你可以用javascript表示的最大值,而不会“失去精度”。这个数字超过了那个限度。从上面的代码看,似乎传递的是int而不是原始字符串?@OliverRadini是的。修正了这个问题。@Hacketo有办法克服这个问题吗?@VanderVidi如果你不计算这个数字,就把它作为字符串保存,否则我想可以使用一些biginteger库。要不要解释下一票?我会很感激的。不知道,但也许可以试着解释一下这个问题,有人会给你一张追加投票作为补偿。现在呢?当这个问题在其他地方得到了很好的回答时,对我来说,把一大堆细节都说出来是没有意义的。我的坏消息现在更新了答案。要不要解释一下否决票?我会很感激的。不知道,但也许可以试着解释一下这个问题,有人会给你一张追加投票作为补偿。现在呢?当这个问题在其他地方得到了很好的回答时,对我来说,深入一大堆细节是没有意义的。我的坏消息现在更新了答案。