2014-12-03 202 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

相關問題