当前位置: 首页 > 面试题库 >

大数字上的JSON.Stringify()会更改数字值吗?

王念
2023-03-14
问题内容

我有一个WCF服务操作,该操作返回带有longList<string>属性的对象。当我在WCF应用程序中测试操作时,一切正常,并且值正确。但是,我需要能够使用jQuery和JSON格式调用该服务。long当我在OnSucceed函数中读回该属性时,该属性的值显然会更改。

搜索后,我发现它会JSON.stringify改变很大的价值。所以在这样的代码中:

alert(JSON.stringify(25001509088465005));

…它将显示为25001509088465004

怎么了?

此处的演示:http :
//jsfiddle.net/naveen/tPKw7/


问题答案:

JavaScript使用IEEE-754双精度(64位)格式表示数字。据我了解,这为您提供53位精度,或者15至16个十进制数字。您的数字位数超出了JavaScript所能应付的位数,因此最终得到了一个近似值。

您需要对这个大数字进行数学运算吗?因为如果它只是某种ID,则可以将其作为字符串返回并避免该问题。



 类似资料:
  • 问题内容: 我正在使用一个返回json的Web服务,并将json存储在本地变量中。json代表一个简单的业务对象,例如: 大小写是这样的,因为按照我们的命名约定,它与.net类的属性名称匹配。 当更改其中一些属性并传递回json时,Web服务现在期望使用驼峰式(再次,按照我们对方法参数的命名约定),而不是最初返回的pascal式。 这当然是行不通的。 我用来将json作为字符串发送回Web服务,并

  • 我有几个问题需要解决作业,有点卡住了。问题是编写一个程序,让用户输入一个奇数(检查它是否奇数),然后根据输入的大小打印一个颠倒的星形金字塔。 例如,如果你输入5,它会出现 因此,我的问题是双重的。 1)我如何检查它是偶数还是奇数?我试过,希望它可以做一些事情,互联网告诉我如果,但这不起作用。 2)如何更改每行中间的星号? 对于任何一个问题的帮助,我们都非常感激。

  • 除了这个问题:更改超文本标记语言电子邮件正文字体类型和大小在VBA,我想知道如何才能改变字体大小 当我从代码中删除字体大小时,它确实改变了字体系列。 谢谢你的协助,

  • 问题内容: 如何更改matplotlib图上所有元素(刻度,标签,标题)的字体大小? 我知道如何更改刻度标签的大小,方法是: 但是如何改变其余的呢? 问题答案: 从matplotlib文档中, 这会将所有项目的字体设置为kwargs对象指定的字体。 另外,您也可以使用此答案中建议的方法: 要么 您可以在“定制matplotlib”页面上找到可用属性的完整列表。

  • 在下面的代码中,我希望减小y轴和x轴值的字体大小。我搜索并找到了以下代码: 假设您想减少数轴的字体大小,请使用以下代码: 假设要减小CategoryAxis的字体大小,请使用以下代码: 但不幸的是,轴的大小并没有减小。我做错什么了吗? 此示例代码:

  • 问题内容: 这似乎是一个愚蠢的问题,但是此函数是否会实际影响变量(我将如何使用此变量的上下文更大,但这基本上是我不确定的问题)?(我专门问有关java) 问题答案: 考虑一个稍微不同的示例: 运行该程序的输出为: 该变量将更改为true,但是一旦方法返回,该参数变量就会消失(这就是人们所说的“超出范围”的意思)。但是,传递给方法的变量保持不变。