【问题标题】:combine json object jquery结合json对象jquery
【发布时间】:2015-07-01 06:40:24
【问题描述】:
[{"First Name":"qwe","member":"complainant"},{"Last Name":"qwee","member":"scienceclub"},{"Middle Name":"wqe","member":"complainant"}]

我只有上面的这个 json 我如何组合/展平/合并它们,以便我可以得到像这样的结果 json

[{"First Name":"qwe","Last Name":"qwe","Middle Name":"wqe","member":"scienceclub"}]

我在 jquery 中搜索一个函数,但我看到的只是带有2 object 的函数。

欢迎提出任何建议

UPDATE

我不分离json数组,它只是一个里面有数组的数组是否可以合并[]内部的数组?

【问题讨论】:

  • 您希望为member 属性获得哪个值?您的原始数组对成员具有不同的值,第二个数组只有一个值。保留scienceclub 的逻辑是什么?
  • 您在寻找 $.extend 吗?stackoverflow.com/questions/929776/…
  • @gillesc 他们将是相同的,所以任何地方都可以
  • @BalintDomokos 如你所见,我只有我反对我只是希望它看起来像你给出的例子有点不同

标签: javascript jquery json


【解决方案1】:

var a = [{
  "First Name": "qwe",
  "member": "complainant"
}, {
  "Last Name": "qwee",
  "member": "scienceclub"
}, {
  "Middle Name": "wqe",
  "member": "complainant"
}];
alert(JSON.stringify(
  $.extend.apply(null, a)
  , null, '\t'
));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

【讨论】:

    【解决方案2】:

    假设你的数组是这样的

    var arr = [{"First Name":"qwe","member":"complainant"},{"Last Name":"qwee","member":"scienceclub"},{"Middle Name":"wqe","member":"complainant"}];
    

    以这种方式使用extend 来完成您的工作

    var obj1 = arr[0];
    $.extend(obj1, arr[2]);
    $.extend(obj1, arr[1]);
    

    结果将在obj1中作为

    {"姓氏":"qwee", "中间名":"wqe", "姓氏":"qwee", "会员":"scienceclub"}

    【讨论】:

    • 我只有一个对象我没有 3 这是从表格 tr 中获取所有输入文本的结果,所以我无法真正将它们分开。
    • 看看吧!可能会有所帮助
    【解决方案3】:

    你可以试试这个:

    arr = [{"First Name":"qwe","member":"complainant"},{"Last     Name":"qwee","member":"scienceclub"},{"Middle Name":"wqe","member":"complainant"}]
    arr.splice(0, 0, {})
    result = $.extend.apply(this, arr)
    

    您仍然需要处理多个键,这将使用最后一个。需要拼接以避免改变数组的第一个对象。

    【讨论】:

      猜你喜欢
      • 2018-11-22
      • 2012-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多