Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

193
Visualizações
How can I classify this array of object according to age

Hello i have this aray of objects

[{
        name: "person1",
        age: 23,
    },
    {
        name: "person2",
        age: 23,
    },
    {
        name: "person3",
        age: 24,
    },
    {
        name: "person4",
        age: 24,
    },
    {
        name: "person5",
        age: 25,
    }
]

so what i want is to classify this array according to age to get

[
    [{
            name: "person1",
            age: 23,
        },
        {
            name: "person2",
            age: 23,
        }
    ],
    [{
            name: "person3",
            age: 24,
        },
        {
            name: "person4",
            age: 24,
        }
    ],
    [{
        name: "person5",
        age: 25,
    }]
]

I can do it the old fashioned way, but what I want with less code, it's okey to use lodash to get the desired result .

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

You could first use reduce to create an object where the items are grouped by age stored as a property, then call Object.values on the result:

const arr=[{name:"person1",age:23},{name:"person2",age:23},{name:"person3",age:24},{name:"person4",age:24},{name:"person5",age:25}];

const byAge = arr.reduce((a,b) => (a[b.age] ? a[b.age].push(b) : a[b.age] = [b], a), {})
const result = Object.values(byAge)
console.log(result)

about 4 years ago · Juan Pablo Isaza Relatório

0

We can solve this by using lodash

const MockData = [ 
 { name: "person1", age: 23, },
 { name: "person2", age: 23, },
 { name: "person3", age: 24, },
 { name: "person4", age: 24, },
 { name: "person5", age: 25, } ];


 _.groupBy(MockData, 'age'); // we get the desired result !
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda