JSFiddle - React, Tailwind, and code Playground

JavaScript

var myArray = [
  { id: 1, cat: "human", age: "10" },
  { id: 2, cat: "human", age: "20" },
  { id: 3, cat: "human", age: "10" },
  { id: 4, cat: "animal", age: "10" },
  { id: 5, cat: "animal", age: "20" },
  { id: 6, cat: "animal", age: "10" },
  { id: 7, cat: "alien", age: "10" },
  { id: 8, cat: "alien", age: "20" },
  { id: 9, cat: "alien", age: "10" },
];

var result = _.chain(myArray)
    .groupBy("color")
    .pairs()
    .map(function (currentItem) {
        return _.object(_.zip(["cat", "age"], currentItem));
    })
    .value();
console.log(result);