Javascript 如何将另一个json中的json对象移动到最后一个位置

Javascript 如何将另一个json中的json对象移动到最后一个位置,javascript,jquery,json,Javascript,Jquery,Json,我有一个json,如下所示 var obj = { "key1" : ["value1"], "key2" : ["value2"], "key3" : ["value3"], "key4" : ["value4"] } 我需要的是,如果值中有任何东西更新或更改,相应的对象应该移动到最后一个位置。例如,如果value2更改为新的value2,则我需要将“key2”和新值移动到最后一个位置。(即)如下 var obj = { "key1" : ["valu

我有一个json,如下所示

var obj = {
    "key1" : ["value1"],
    "key2" : ["value2"],
    "key3" : ["value3"],
    "key4" : ["value4"]
}
我需要的是,如果值中有任何东西更新或更改,相应的对象应该移动到最后一个位置。例如,如果value2更改为新的value2,则我需要将“key2”和新值移动到最后一个位置。(即)如下

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

如何在json中做到这一点?

对象/json没有保证顺序。用数组替换包装器。

更改数组类型的包装器对象。

您不直接处理json。这只是一根绳子。您将JSON解码为一个本机数据结构,根据需要操作该结构,然后将其转换回JSON字符串。此外,结构中键的顺序与JSON无关。您可以按字母顺序排列,也可以按内部存储顺序排列,等等。无法保证字符串将如何生成。顺便说一句,它们只是对象,不是json。对象没有排序顺序,因此,如果不将对象转换为数组,则无法执行所需的操作。为什么要将其移动到最后一个位置?不管位置是什么,它们代表一个属性。好吧,我想从技术上来说,你可以保留一个单独的数组来存储对象键的顺序。。。但当切换到数组并不困难时,这就有点过分了。你指的是对象,而不是JSON。因为JSON字符串也可以表示数组,数组的顺序是有保证的。我不会把钱押在它上面。根据我的经验,它们在不同浏览器之间的处理是不一致的,这是无效的语法。数组没有这样的键。