0

我有2个json,我现在的工作是将两者合并成一个json,并在json中按时间值排序,json中的值保持原样。我试过很多方法都做不到,你能帮帮我吗?谢谢你。

json 1

{"data":[{"messageString":"xin chao lqh 1","dateSent":"2013-06-13T02:58:37.0000000-07:00","fromUserID":"4091471","userName": "yanbi"},{"messageString":"xin chao lqh 2","dateSent":"2013-06-13T02:58:54.0000000-07:00","fromUserID":"3569333","userName":" vuquyet"},{"messageString":"xin chao lqh 2","dateSent":"2013-06-13T02:59:05.0000000-07:00","fromUserID":"3878204","userName":"duongdung "}]}

json 2

{"data":[{"messageString":"Hi ban h?i","toUserID":"3600311","dateSent":"2013-05-06T21:04:23.0000000-07:00"},{" messageString":"yes","toUserID":"4091471","dateSent":"2013-06-15T02:16:58.0000000-07:00"},{"messageString":"xin chao duongdung13","toUserID" :"3844013","dateSent":"2013-06-10T21:54:56.0000000-07:00"},{"messageString":"xin chao duongdung13 l?n 2","toUserID":"3844013"," dateSent":"2013-06-10T21:55:06.0000000-07:00"},{"messageString":"xin chao duongdung13 l?n 3","toUserID":"3844013","dateSent":"2013- 06-10T21:55:19.0000000-07:00"},{"messageString":"oh chào yanbi","toUserID":"4091471","dateSent":"2013-06-14T23:31:38.0000000-07:00"},{"messageString":" yanbi bi?t tôi ah ?","toUserID":"4091471","dateSent":"2013-06-14T23:32:36.0000000-07:00"},{"messageString":"vâng tôi chào b?n ","toUserID":"3569333","dateSent":"2013-06-14T23:42:35.0000000-07:00"},{"messageString":"sao v?yb?n ?","toUserID": "4091471","dateSent":"2013-06-14T23:43:45.0000000-07:00"}]}{"messageString":"yanbi bi?t tôi ah ?","toUserID":"4091471","dateSent":"2013-06-14T23:32:36.0000000-07:00"},{"messageString":" vâng tôi chào b?n","toUserID":"3569333","dateSent":"2013-06-14T23:42:35.0000000-07:00"},{"messageString":"sao v?yb?n ? ","toUserID":"4091471","dateSent":"2013-06-14T23:43:45.0000000-07:00"}]}{"messageString":"yanbi bi?t tôi ah ?","toUserID":"4091471","dateSent":"2013-06-14T23:32:36.0000000-07:00"},{"messageString":" vâng tôi chào b?n","toUserID":"3569333","dateSent":"2013-06-14T23:42:35.0000000-07:00"},{"messageString":"sao v?yb?n ? ","toUserID":"4091471","dateSent":"2013-06-14T23:43:45.0000000-07:00"}]}messageString":"sao v?yb?n ?","toUserID":"4091471","dateSent":"2013-06-14T23:43:45.0000000-07:00"}]}messageString":"sao v?yb?n ?","toUserID":"4091471","dateSent":"2013-06-14T23:43:45.0000000-07:00"}]}

4

2 回答 2

0

如果 JSON 尚未解析,则必须解析它们:

json1 = JSON.parse(json1_string);
json2 = JSON.parse(json2_string);

解析 JSON 后,只需连接数组并对它们进行排序:

array = json1.data.concat(json2.data);
array.sort(function(a, b) {
  if(a.dateSent < b.dateSent) {
    return -1;
  } 
  if(a.dateSent > b.dateSent) {
    return 1;
  } else {
    return 0;
  }
});
于 2013-06-15T10:45:07.890 回答
0

如果你有 jQuery,你可以在这里jQuery.extend(json1, json2);使用更多信息

于 2013-06-15T10:38:10.753 回答