繁体   English   中英

操作 JSON 对象数组

[英]Manipulating an array of JSON objects

长话短说,我有一个没有键的 JSON 对象数组。我正在尝试将每个 object 推送到 HTML,但是,我有重复的数据,我想合并。 我通过 AJAX 调用得到这个数组,不确定我是否应该在调用期间或之后实现某些东西。

我的数据如下所示:

myData =[{Title:'Test', Dates:'11/12/14-/n11/14/14', Code:'A1B2C3'},
         {Title:'Test', Dates:'10/12/14-/n10/14/14', Code:'D1E2F3'},
         {Title:'Test', Dates:'11/12/14-/n11/14/14', Code:'D1E2F3'},
         {Title:'Test2', Dates:'01/12/14-/n01/14/14', Code:'H1J2K3'}]

AJAX 看起来像这样:

$.ajax({
    url: ckURL,
    async: false,
    dataType: 'json',
    success: function(data) {
        myData= data;
    }
});

我希望 myData 看起来像:

myData =[Test:{Dates:['11/12/14-/n11/14/14','10/12/14-/n10/14/14'], Code:['A1B2C3','D1E2F3']},
         Test2:{Dates:'01/12/14-/n01/14/14', Code:'H1J2K3'}]

或者像这样:

myData =[{Title:'Test', Dates:['11/12/14-/n11/14/14','10/12/14-/n10/14/14'], Code:['A1B2C3','D1E2F3']},
         {Title:'Test2', Dates:'01/12/14-/n01/14/14', Code:'H1J2K3'}]

如果您对如何 go 了解此问题,将不胜感激。 感谢您阅读到此为止。

您好,欢迎登机!

Mapreduce是你的朋友。

以下是如何访问您发布的第一个结构的示例:

myData.reduce((data, item) => {
  const d = data[item.Title];
  if (d) {
    d.Dates.push(item.Dates);
    d.Code.push(item.Code);
  } else {
    data[item.Title] = {
      Dates: [item.Dates],
      Code: [item.Code]
    };
  }
  return data;
}, {}); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM