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

123
Visualizações
Javascript get object from array having min value and min value is needs to find and then find object

I have array of objects in object have different key so i want the object having minimum value in that array

list = [
{
'id':4,
'name':'nitin',
'group':'angularjs'
},
{
'id':1,
'name':'nitin',
'group':'angularjs'
},
{
'id':2,
'name':'nitin',
'group':'angularjs'
},
{
'id':3,
'name':'nitin',
'group':'angularjs'
}]

I tried by

var minValue = Math.min.apply(Math, list.map(function (o) {
                return o.id;
            }))

but it returns only the id not whole object then i have to make more filter for get object

is there any direct method to find object?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

You can use Array reduce method:

var list = [
{
'id':4,
'name':'nitin',
'group':'angularjs'
},
{
'id':1,
'name':'nitin',
'group':'angularjs'
},
{
'id':2,
'name':'nitin',
'group':'angularjs'
},
{
'id':3,
'name':'nitin',
'group':'angularjs'
}];

var result = list.reduce(function(res, obj) {
    return (obj.id < res.id) ? obj : res;
});

console.log(result);

over 4 years ago · Santiago Trujillo Relatório

0

Using Array#reduce()

list = [{
    'id': 4,
    'name': 'nitin',
    'group': 'angularjs'
  },
  {
    'id': 1,
    'name': 'nitin',
    'group': 'angularjs'
  },
  {
    'id': 2,
    'name': 'nitin',
    'group': 'angularjs'
  },
  {
    'id': 3,
    'name': 'nitin',
    'group': 'angularjs'
  }
];

let min = list.reduce((prev, curr) => prev.id < curr.id ? prev : curr);

console.log(min);

over 4 years ago · Santiago Trujillo Relatório

0

I tried these solutions with Array.reduce but none of them were full proof. They do not handle cases where the array is empty or only has 1 element.

Instead this worked for me:

const result = array.reduce(
    (prev, current) =>
      (prev?.id ?? current?.id) >= current?.id ? current : prev,
    null,
  );

It returns null if array is empty and handles other cases well.

over 4 years ago · Santiago Trujillo 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