DEV Community

Discussion on: Frontend interview - Questions I was asked

Collapse
 
alexter42 profile image
Alejandra Monroy • Edited
const sortBy = (arr, attribute) => {
  const set = new Set();
  arr.map((element) => set.add(element[attribute]));

  const sorted = {};

  set.forEach(
    (setElement) => (sorted[setElement] = arr.filter((element) => element[attribute] === setElement))
    .forEach(element => delete element[attribute]),
  );

  return sorted;
};
Enter fullscreen mode Exit fullscreen mode