我很想知道像树,图,地图或其他更复杂的数据类型这样的复杂数据类型是否可以转换为json格式,并且具有与轻量级对象相同的序列化灵活性。
考虑到json格式只是文本交换的键/值格式,(字段/值或名称/值 - 无论您喜欢哪种。其中值可以是一个或多个,值可以是简单类型或另一个json类型),< / p>
是否有必要让任何数据结构满足这个条件?
是 - 这对json格式有用;
否 - 然后将此数据结构细分为更小的键值结构!或者可以做些什么?
请详细说明您的答案!
我正在围绕json和各种数据结构进行一些研究,并且非常欣赏各种各样的意见。
答案 0 :(得分:0)
通常,你几乎可以完成tree
复杂度的所有事情。您不能直接代表graphs
(甚至graphs without cycles
)之类的内容,但有办法克服此限制。
此处出现问题,使用图表,或者只是对JSON中任意对象的单个引用。
+- Root Object -------------+
| +-------+ +-------+ |
| | OBJ_A | | OBJ_B | |
| +-------+ +-------+ |
| | ref------>| | |
| +-------+ +-------+ |
| field_a field_b |
+---------------------------+
您可以通过多种方式克服这些限制:
遗憾的是,所有上述解决方案都需要进行后处理才能将伪引用(索引/名称/等)转换为真正的“原生”引用。