2013-10-16 27 views
0

我有一個JSON像如下如何將其他的json裏面JSON對象移動到最後的位置

var obj = { 
    "key1" : ["value1"], 
    "key2" : ["value2"], 
    "key3" : ["value3"], 
    "key4" : ["value4"] 
} 

我需要的是,如果在值更新或改變任何事情相應的對象應該移動到最後的位置。例如,如果value2更改爲新值2,則需要將「key2」和新值移至最後位置。 (即)如下

var obj = { 
    "key1" : ["value1"], 
    "key3" : ["value3"], 
    "key4" : ["value4"], 
    "key2" : ["new value2"] 
} 

如何在json中做到這一點?

+0

你不直接處理json。這只是一個字符串。您將JSON解碼爲本機數據結構,然後根據需要操作該結構,然後將其轉換回json字符串。另外,結構中鍵的排序與JSON無關。你可能會按字母順序排列,你可能會得到內部存儲順序,無論如何。如何製作字符串並不能保證。 –

+4

他們只是對象,順便說一句。不是json。對象沒有排序順序,因此如果不將對象轉換爲數組,則無法做到自己想要的操作。 –

+0

你爲什麼要把它移到最後位置?無論什麼位置,他們代表一種財產。 –

回答

2

對象/ JSON沒有保證的順序。用Array替換你的包裝器。

+1

你的意思是對象,而不是JSON。 –

+0

因爲JSON字符串也可以表示一個數組,它具有有保證的順序。 –

+1

我不會賭我的錢。根據[JSON.org](http://json.org/),它們的確如此,但根據我的經驗,它們在各種瀏覽器中處理得不一致。 –

0

更改您的包裝類型數組的對象。

+0

這是無效的語法。陣列沒有這樣的鍵。 – SLaks

相關問題