Jquery 按id将两个json对象合并到一个对象中

Jquery 按id将两个json对象合并到一个对象中,jquery,ajax,json,Jquery,Ajax,Json,我有两个类似这样的json对象: Object 1: { "jcat":[ { "TITLE":"SEO", "ID":"27", }, { "TITLE":"Functions and Events", "ID":"2" }, ] } Object 2: { "job":[ { "PCATID":"27", "CC":"AHE",

我有两个类似这样的json对象:

Object 1:

{
   "jcat":[
      {
         "TITLE":"SEO",
         "ID":"27",
      },
      {
         "TITLE":"Functions and Events",
         "ID":"2"
      },
]
}

Object 2:

{
  "job":[
  {
     "PCATID":"27",
     "CC":"AHE",
     "JNUM":"01488"
  },
  {
     "PCATID":"27",
     "CC":"EBS",
     "JNUM":"01489"
  },
]}
它们有共同的idsID和PCATID,但名称不同

如何合并它们以使最终对象看起来像:

目标3:

{
   "jcat":[
      {
         "TITLE":"SEO",
         "ID":"27",
         "CC":"AHE",
         "JNUM":"01488"
      },
      {
         "TITLE":"SEO",
         "ID":"27",
         "CC":"EBS",
         "JNUM":"01489"
      },

    ]
}

要做到这一点,没有真正简单的方法。但以下措施将起作用:

var obj1 = {
   "jcat":[
      {
         "TITLE":"SEO",
         "ID":"27",
      },
      {
         "TITLE":"Functions and Events",
         "ID":"2"
      }]
};

var obj2 = 
{
  "job":[
  {
     "PCATID":"27",
     "CC":"AHE",
     "JNUM":"01488"
  },
  {
     "PCATID":"27",
     "CC":"EBS",
     "JNUM":"01489"
  }
]};

var newObj = {jcat:[]};
newObj.jcat[0] = $.extend(true, {}, obj1.jcat[0], $.map([obj2.job[0]],function(e){
    return {CC:e.CC, JNUM:e.JNUM};
})[0]);
newObj.jcat[1] = $.extend(true, {}, obj1.jcat[0], $.map([obj2.job[1]], function(e){
    return {CC:e.CC, JNUM:e.JNUM};
})[0]);
JS小提琴: