js reduce 通过某一字段合并数组

sortData(data?.list || [], 'hd') //调用
sortData(data: any, key: string) {
    return data.reduce((cur: any, acc: any) => {
      const index = cur.findIndex((item: any) => {
        return item[key] == acc[key]
      })

      index == -1 && cur.push({ ...acc, listInfo: [] })

      const index_ = cur.findIndex((item: any) => {
        return item[key] == acc[key]
      })

      index != -1 && cur[index_].listInfo.push({ ...acc })

      return cur
    }, [])
  }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容