JSFiddle - React, Tailwind, and code Playground

JavaScript

var people = [
    {
        name: 'Pete',
        gender: 'Male',
        age: 22

    },
    {
        name: 'Samantha',
        gender: 'Female',
        age: 20
    },
    {
        name: 'Frank',
        gender: 'Male',
        age: 22

    },
    {
        name: 'Gary',
        gender: 'Male',
        age: 21

    },
    {
        name: 'Maria',
        gender: 'Female',
        age: 20
    },
    {
        name: 'Hannah',
        gender: 'Female',
        age: 21

    },
    {
        name: 'Pete',
        gender: 'Male',
        age: 20
    }
];

var obj = people.reduce(function (p, c, i) {
  p[c.gender].push(c);
  return p;
}, { Male: [], Female: [] });

function getMaleByAge(obj, age) {
  return obj.Male.filter(function (el) {
    return el.age === age;
  });
}

console.log(obj, getMaleByAge(obj, 21)[0])