【发布时间】:2012-08-16 12:05:55
【问题描述】:
由于 JavaScript 对所有数字都使用浮点数学运算,这不会在所有情况下都保持精度,因此我想解析一个包含数字的 JSON 对象,但在返回的 JavaScript 对象而不是数字对象中生成字符串。有没有办法使用标准库或第三方库来做到这一点?
【问题讨论】:
-
我真的怀疑任何常用的库都会这样做。您最好首先生成带有数字作为字符串的 JSON。
-
正如你所建议的,“我想解析......”。我认为您需要在导入之前操作 JSON string 并制作数值字符串 - 也许使用正则表达式?
-
@w3d 操作字符串是可能的,但由于字符串中可能已经嵌入了数字字符串,因此它可能几乎与直接解析 JSON 一样困难。 JavaScript JSON 解析器的源代码是可用的,而且我怀疑它很容易修改,因为解析器无论如何都必须以字符串形式收集数字常量。
-
仅供参考...当可选的第四个参数设置为
JSON_BIGINT_AS_STRING时,PHP 的json_decode()函数允许您执行此操作。
标签: javascript json floating-point