json 相加优化问题

发布于 2022-09-06 02:41:45 字数 416 浏览 15 评论 0

json1 = [
  {
    a: 'aaa',
    b: 'bbb',
    c: 'ccc'
  },
  {
    a: 'ddd',
    b: 'eee',
    c: 'fff'
  }
]
json2 = [
  {
    id: 1
  },
  {
    id: 2
  }
]

想将两个json合成为

json3 = [
  {
    a: 'aaa',
    b: 'bbb',
    c: 'ccc',
    id: 1
  },
  {
    a: 'ddd',
    b: 'eee',
    c: 'fff',
    id: 2
  }
]

应该如何做呢?自己的想法是使用for回圈遍历... 希望能有效能更好多做法...
感谢了

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

晨曦÷微暖 2022-09-13 02:41:47
let json3 = []
for (let i = json1.length; i--;) { 
    json3[i] = { 
        ...json1[i], 
        ...json2[i] 
    } 
}
囍笑 2022-09-13 02:41:47
var combineObjects = Array(json1.length).fill().map(function(v,i){
    return Object.assign({},json1[i],json2[i]);
})
行雁书 2022-09-13 02:41:47

推销一个我自己写的合并函数

https://segmentfault.com/a/11...

按照你的需求:

console.log(EXT().merge(json1, json2));

结果如下图:

图片描述

北方的韩爷 2022-09-13 02:41:46

一行解决

const json3 = json1.map((v, i) => Object.assign({}, v, json2[i]))
ぃ弥猫深巷。 2022-09-13 02:41:46
let json1 = [
  {
    a: 'aaa',
    b: 'bbb',
    c: 'ccc'
  },
  {
    a: 'ddd',
    b: 'eee',
    c: 'fff'
  }
];
let json2 = [
  {
    id: 1
  },
  {
    id: 2
  }
];
// json1,json2长度得一致
let json3 = json1.map((item, i) => {
    return Object.assign(item, json2[i]);
})
console.log(json3);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文