如何将两个 JSON 与 extend 和 return 结合起来?

How to combine two JSON with extend and return them?

我需要做如下结构:

 "rows":[  
    {//panel1  
    },  
    {//panel2  
    }  
    {//panel3 ...   
    }  
  ]

所以我创建了方法 extend 所以我正在尝试这样做但是它不起作用因为它只 returns 我最后 JSON :

var panel_cpu = {"title": "iNeedHelp","smt": 5}
                 
var panel_swap = {"title": "iNeedHelp2","smt":  6}
                 
var combined = $.extend({}, panel_cpu, panel_swap); 

//following the comments...

var arr = [];
arr.push(panel_cpu);
arr.push(panel_swap);     
////////////////////////////     

//following 1 answer
var combined2 = $.extend({}, [panel_cpu, panel_swap]);
//////////////////////////////////////////////////////
var big_panel = {"rows": arr}

console.log(big_panel);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

这里用的是JQuery因为没找到下划线库

您可以实现如下输出:

var panel_cpu = [{
  "title": "iNeedHelp",
  "smt": 5
}]

var panel_swap = [{
  "title": "iNeedHelp2",
  "smt": 6
}]

var combined = panel_cpu.concat(panel_swap);

var big_panel = [{
  "rows": [combined]
}]

console.log(big_panel);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

但是您需要为 panel_cpupanel_swqp 变量提供数组值。我将在发布此内容时给出一个简单的答案。

编辑 1

改变这个会得到如下输出,

var big_panel = {
  "rows": combined
}

var panel_cpu = [{
  "title": "iNeedHelp",
  "smt": 5
}]

var panel_swap = [{
  "title": "iNeedHelp2",
  "smt": 6
}]

var combined = panel_cpu.concat(panel_swap);

var big_panel = {
  "rows": combined
}

console.log(big_panel);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>