【发布时间】:2015-01-16 00:59:03
【问题描述】:
假设我有以下输入的 JSON 对象
{
"field1": 21,
"field2": "21",
"field3": "hello"
}
decode_json 或 from_json 有什么方法可以知道值的原始类型是什么(数字与字符串)?我知道 Perl 通常不关心类型,但我需要知道原始类型是什么。我也知道 perl 在创建 JSON 对象时确实会跟踪类型(因此在创建 JSON 对象时它确实区分“21”和 21,所以我希望有一种方法可以在解码/“来自”时保留该信息记住它。
我不想将它基于字段名称,因为我试图编写一些通用的东西,并且字段名称可能会改变。
【问题讨论】:
-
那不是 JSON。 jsonlint.com
-
只是出于病态的好奇心...为什么需要区别对待
21和"21"? -
我下线了一段时间.. 与 mongo 和 mongoose 有关。在发送之前将 perl 对象转换为正确的 mongo 字段。