JSON Int64数据随机翻转/更改

时间:2012-07-17 06:47:23

标签: jquery json int64

我正在使用jquery从我的网络服务器获取json数据。当我检查返回的Fiddler数据时,一切看起来都正常。但是,当我在Chrome / IE /或Safari中启动调试时,我注意到某些值已更改。例如,Int64是从服务器发送的,值为:10150987224093521.但是,当我调试时,我将其视为1015098722409352 * 0 *,该值始终减1。 Fiddler显示正确的值,即:10150987224093521。它是随机发生的。我无法找到合理的理由。有关为什么会发生这种情况的任何想法或提示?

1 个答案:

答案 0 :(得分:2)

JavaScript表示具有双浮点数的所有数字:

http://en.wikipedia.org/wiki/JavaScript_syntax#Number

  

数字以二进制表示为IEEE-754双打,提供   精度接近16位有效数字。因为他们漂浮着   点数,它们并不总是完全代表实数,   包括分数。

您的号码有17位数字:10 15098 72240 93521,因此您开始失去精确度。

快速javascript演示:http://jsfiddle.net/EYjjX/