JSFiddle - React, Tailwind, and code Playground

by Dmitri Ganenco

JavaScript

let data = [{
    id: 1,
    name: "name1",
    type: "xx"

  },{
    id: 2,
    name: "name2",
    type: "xy"
  },{
    id: 5,
    name: "name5",
    type: "vc"
  },{
    id: 5,
    name: "name6",
    type: "fg"
  }, {
    id: 5,
    name: "name7",
    type: "ae"
  }
];

let result = data.reduce(function(r, a) {
  r[a.type] = r[a.type] || [];
  r[a.type].push(a);
  return r;
}, Object.create(null));

console.log(result);