JS怎么把N个JSON数组进行比较,相同的合并后放进新数组,不同的一起放进新数组?

如题所述

如果两个json字段相同,拼接起来的话 后一个json会覆盖前一个json的字段。
如果想保留2个json的数据 就把这2个json放到一个数组里吧。
分别给出代码:
拼接,字段相同会覆盖:
<script type="text/javascript">
var j1 = { 
'': '',
action: 'adduser',
user: '123',
pwd: '11111',
rpassword: '11111',
email: '[email protected]
}
var j2 = {
aa:'aa',
user: 'user'
}
json = eval('('+(JSON.stringify(j1)+JSON.stringify(j2)).replace(/}{/,',')+')');
console.log(json);

</script>


不覆盖,放到一个数组里:
<script type="text/javascript">
var j1 = { 
'': '',
action: 'adduser',
user: '123',
pwd: '11111',
rpassword: '11111',
email: '[email protected]
}
var j2 = {
'': '222',
action: 'adduser222',
user: '123222',
pwd: '11111222',
rpassword: '11111222',
email: '[email protected]
}
json = [j1,j2];
console.log(json);

</script>

追问

谢谢您得回答,我可能问得不详细,我是想将两个JSON进行汇总,例如把下面的两张表格合并,如名称相同的就将用量相加起来再放进新数组,不同名称的就一起放进新的数组

温馨提示:答案为网友推荐,仅供参考
相似回答