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

解析JSON时如何防止删除小数点?

仉昱
2023-03-14
问题内容

如果你这样做

var parsed = JSON.parse('{"myNum":0.0}') ;

然后,当您看着时parsed.myNum,您就会得到0。(很公平。)

如果这样做parsed.myNum.toString(),您会得到"0"

基本上,我正在寻找一种将其转换为string的方法"0.0"

显然,在现实生活中,我无法控制JSON输入,而是从Web服务获取JSON
…我想使用浏览器的JSON解析器解析JSON,并能够识别数字值00.0

除了手动读取JSON字符串外,还有什么方法可以做到这一点?在这种情况下,这实际上是不可能的,为了提高速度,我需要使用浏览器的本机JSON解析器。(顺便说一下,这是针对Chrome扩展程序;无需担心它在其他浏览器中的运行。)


问题答案:

无法从JSON.parse或获得数字位数eval。即使EcmaScript委员会采用了IBM的十进制提议,该数字仍将解析为IEEE 754浮点数。

看一下http://code.google.com/p/json-sans-
eval/source/browse/trunk/src/json_sans_eval.js
,以获取可以修改以保留精度信息的简单JSON解析器。



 类似资料:
  • 我有一个模范国家,因此有一个表国家。countries表作为iso国家和货币代码的集合,不应该减少这些内容(在我用种子数据填充之后)。因为Country是ActiveRecord::Base的一个子类,所以它继承了诸如destroy、delete_all等类方法来删除记录。我正在寻找一种解决方案,以防止在模型级别删除记录。 Ofc。我知道我可以使用面向对象的方法来解决这个问题,方法是重写这个方法(

  • 我有一个用于用户配置文件图像的模型,当我删除具有默认图像的用户时,默认图像也会被删除。我相信这是必须的,因为我设置了on_delete=models.CASCADE。 我尝试在ImageField中启用_delete=PROTECT,但它无法识别该属性。

  • 我有一个带有属性映射的YAML配置文件: 引导将解析为: 下面的实际示例。 : 对结果对象调用:

  • 我有一个JPA属性实体,它有子实体(多个比率和多个保留)。在我的JavaScript应用程序中,我通过REST{属性:{速率:[…],拉取JSON,保留[…]} 。速率和保留非常详细,因此当我发布属性更新(如更改名称)时,我会从JSON post有效负载中删除速率和保留。我希望Hibernate可以忽略掉丢失的钥匙,但遗憾的是,它正在删除save上的所有孩子。如果它们不存在,我如何指定Hibern

  • 问题内容: 是否可以防止删除PostgreSQL端表中的第一行? 我有一个类别表,我想防止删除默认类别,因为它可能会破坏应用程序。当然,我可以轻松地在应用程序代码中执行此操作,但是在数据库中执行此操作会更好。 我认为这与delete语句的规则有关,但是我找不到文档中与我的问题遥遥相望的任何东西。 问题答案: 我看到的最好的方法是在此表上创建一个删除触发器。基本上,您必须编写一个存储过程来确保该“默

  • 我有一系列来自SQS队列事件触发器的AWS Lambdas。但是,有时当我试图从队列中删除消息时,尝试会一次又一次地超时,直到我的Lambda超时发生。 我启用了调试日志记录,确认这是套接字超时,但除此之外,我没有得到任何进一步的详细信息。这似乎也是不规则的。起初,我认为这是一个Lambda预热问题,但在成功运行Lambda多次并在第一次部署时,我发现了这个问题。 到目前为止,我所尝试的: 我想也