JS对象数组按对象某属性分类

307 阅读1分钟

[代码片段](https://code.juejin.cn/pen/7137993502897471529)

function sortArr(arr) {
  let obj = {}
  arr.map(item =>
    obj[item.name] = 0
  )
  let nameArr = Object.keys(obj)
  let result = nameArr.map(item => {

    return {
      data: arr.filter(v =>
        v.name == item
      )
    }

  })
  return result
}

let arr = [
  { id: 1, name: '哈哈' },
  { id: 2, name: '哈哈' },
  { id: 3, name: '哈喽' },
  { id: 4, name: '你干嘛' },
  { id: 5, name: '你干嘛' },
  { id: 6, name: '哎哟' },

]

console.log(sortArr(arr))