2014-12-03 113 views
3

需要与相同的值JSON不同的密钥来存储,这样的:json具有相同值的多个键?

{ 
    "key1" : "valueA", 
    "key2" : "valueA", 
    "key3" : "valueA", 
    "key4" : "valueB", 
    "key5" : "valueB", 
    "key6" : "valueB", 
} 

但是因为将存在与相同的值相关联的许多键,有没有来优化代码,例如一个选项使用数组作为键?这是抛出我的错误...

{ 
    ["key1","key2","key3"] : "valueA", 
    ["key4","key5","key6"] : "valueB 
} 

回答

2

没有。在JSON中,所有的键都必须是字符串。你可以做的最好的是:

{ 
    "key1,key2,key3": "valueA", 
    "key4,key5,key6": "valueB" 
} 

不过,当然,你需要解码JSON分裂他们以后做一些处理(或者代替,一些其他的分隔符。)备份成多个密钥。但是,如果您担心通过HTTP发送数据的成本,那么请确保您的服务器启用了gzip压缩。它会很好地压缩这些重复的值。

+0

我已经看过YAML和XML,看看他们是否可以解决问题,他们不能,但是当你需要多个键指向相同的值时,你知道是否有任何好的解决方案(所以你可以通过例如url或id查找值,而不必分割字符串等 - 我正在寻找一个解决方案,它会执行一些类似于通过键查找属性的方法,因此它可以比10000+项? – Dac0d3r 2015-05-28 22:35:49

相关问题