js 数组对象根据指定key合并数组

const list = [
{
name:'111',
data:10,
},
{
name:'111',
data:60,
},
{
name:'222',
data:20,
},
{
name:'222',
data:30,
},
]
  mergeArr(arr, key) {
        var afterData = []
        arr.forEach((item) => {
          const flag = afterData.find((item1) => item1[key] === item[key])
          if (!flag) {
            const obj = {}
            obj[key] = item[key]
            obj['data'] = [item]
            afterData.push(obj)
          } else {
            flag.data.push(item)
          }
        })
        return afterData
      }
 console.log(mergeArr(list,'name'))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容