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

154
Visualizações
mantener el orden de la matriz al obtener valores de json

Para la entrada de var idx = [4, 6, 5] :

 i: 0 id: 4 rating: 999 i: 2 id: 5 rating: 333 i: 1 id: 6 rating: 666

Resultado deseado:

 i: 0 id: 4 rating: 999 i: 1 id: 6 rating: 666 i: 2 id: 5 rating: 333 

 var data = [{ "id": 1, "rating": 55 }, { "id": 2, "rating": 22 }, { "id": 3, "rating": 111 }, { "id": 4, "rating": 999 }, { "id": 5, "rating": 333 }, { "id": 6, "rating": 666 } ]; var idx = [4, 6, 5]; $.each(data, function() { for (var i = 0; i < idx.length; ++i) { if (idx[i] == this.id) { console.log('i: ' + i + ' id: ' + this.id + ' rating: ' + this.rating); } } });

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

0

Su problema se resuelve mediante Array.map Simplemente asigne sus valores idx:

 var data = [{ "id": 1, "rating": 55 }, { "id": 2, "rating": 22 }, { "id": 3, "rating": 111 }, { "id": 4, "rating": 999 }, { "id": 5, "rating": 333 }, { "id": 6, "rating": 666 } ]; var idx = [4, 6, 5]; var mappedData = idx.map(function(idx) { return data.find(function(dataItem) { return dataItem.id === idx }) }) mappedData.forEach(function(v) { console.log('id: ' + v.id + ' rating: ' + v.rating); })

about 4 years ago · Juan Pablo Isaza Relatório

0

Simplemente estabas haciendo un bucle con la lista incorrecta :)

 var data = [{ "id": 1, "rating": 55 }, { "id": 2, "rating": 22 }, { "id": 3, "rating": 111 }, { "id": 4, "rating": 999 }, { "id": 5, "rating": 333 }, { "id": 6, "rating": 666 } ]; var idx = [4, 6, 5]; idx.forEach((id, index) => { const myData = data.find(x => x.id == id); console.log(`i:${index} id:${myData.id} rating: ${myData.rating}`) });

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Relatório

0

Prueba lo siguiente:

 var data = [{ "id": 1, "rating": 55 }, { "id": 2, "rating": 22 }, { "id": 3, "rating": 111 }, { "id": 4, "rating": 999 }, { "id": 5, "rating": 333 }, { "id": 6, "rating": 666 } ]; var idx = [4, 6, 5]; for (let i = 0; i < idx.length; i++) { const rating_ind = data.findIndex(e => e.id == idx[i]) if (rating_ind > -1) { console.log('i: ' + i + ' id: ' + idx[i] + ' rating: ' + data[rating_ind].rating); } }

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