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

92
Visualizações
Determine si una matriz de objetos contiene algún objeto de otra matriz en JavaScript

Dados los siguientes dos objetos de matriz:

 let origArr = [ { value: 2, label: 'Dog' }, { value: 4, label: 'Cat' }, { value: 16, label: 'Horse' } ] let newArr = [ { value: 2, label: 'Dog' }, { value: 3, label: 'Bird' }, { value: 0, label: 'Fish' } ]

¿Cuál sería la mejor manera de devolver una nueva matriz de solo el valor de la diferencia entre origArr y newArr , es decir, donde los elementos origArr no están en newArr ?

En el ejemplo anterior, busco una nueva matriz llamada diffArr = [4,16]

Tenga en cuenta : que todos los valores de value dentro de origArr y newArr son únicos

¿No está seguro si hay un medio ES2016 ?

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

0

Puede usar el filter y some para hacer el trabajo.

 let origArr = [ { value: 2, label: 'Dog' }, { value: 4, label: 'Cat' }, { value: 16, label: 'Horse' } ] let newArr = [ { value: 2, label: 'Dog' }, { value: 3, label: 'Bird' }, { value: 0, label: 'Fish' } ] const res = origArr.filter(x => !newArr.some(y => y.value === x.value)); console.log(res); // assuming you want the entire filtered objects const justValues = res.map(x => x.value); // if you want just the filtered values console.log(justValues)

algunos: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/some

filtro: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede obtener todos los valores únicos de newArr usando Set y array#map y luego filtrar el valor que no existe en el conjunto y obtener todos los valores.

 const origArr = [ { value: 2, label: 'Dog' }, { value: 4, label: 'Cat' }, { value: 16, label: 'Horse' } ], newArr = [ { value: 2, label: 'Dog' }, { value: 3, label: 'Bird' }, { value: 0, label: 'Fish' } ], unique = new Set(newArr.map(o => o.value)), difference = origArr .filter(({value}) => !unique.has(value)) .map(o => o.value); console.log(difference);

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