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

125
Visualizações
how do you turn this into this?

I have an array:

const arr = [
   { name: "Jeff", id: 1 },
   { name: "Mary", id: 2 },
   { name: "Jeff", id: 3 },
   { name: "Mary", id: 4 },
   { name: "Emile", id: 5 },
];

I want to turn it into this:

const obj = {
    Jeff: [1, 3],
    Mary: [2, 4],
    Emile: [5],
};

I tried using the Array.reduce method, but I can't seem to wrap my head around the logic.

const obj = arr.reduce((acc, info) => {
    acc[info[name]] = .... 
    return acc;
}, {});

I assume it can be done with the reduce method

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

0

You are on the right track, you just need to check to see if the array is there.

const arr = [
   { name: "Jeff", id: 1 },
   { name: "Mary", id: 2 },
   { name: "Jeff", id: 3 },
   { name: "Mary", id: 4 },
   { name: "Emile", id: 5 },
];

const result = arr.reduce((acc, { name, id }) => {
  acc[name] = acc[name] || [];  // or if(!acc[name]) acc[name] = [];
  acc[name].push(id);
  return acc;
}, {});

console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório

0

You can do like this:

const arr = [
  { name: "Jeff", id: 1 },
  { name: "Mary", id: 2 },
  { name: "Jeff", id: 3 },
  { name: "Mary", id: 4 },
  { name: "Emile", id: 5 },
];

const result = arr.reduce(
  (acc, cur) => ((acc[cur.name] || (acc[cur.name] = [])).push(cur.id), acc),
  {}
);

console.log(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