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

157
Visualizações
cómo eliminar un elemento de la matriz

Tengo un problema para corregir un error.

Estoy obteniendo datos de la base de datos. los datos (objeto) contienen una matriz de nombres. Tengo un gancho useState que contiene una matriz de objetos. El valor son los nombres. Quiero eliminar todos los objetos del enlace useState tanto como el nombre de la matriz obtenida para la base de datos.

Exp:

 response.data.players = ["player1", "player2"] const [names, setNames] = useState([ {value: "player1", label: "player1"}, {value: "player3", label: "player3"}, {value: "player2", label: "player2"}, {value: "player5", label: "player5"}, ])

Quiero que los nombres se vuelvan así:

 [ {value: "player3", label: "player3"}, {value: "player5", label: "player5"}, ]

con una complejidad de tiempo mínima (ya estoy usando .map para servir otro enlace con los nombres, si puedo usarlo, será perfecto para la complejidad de tiempo)

Gracias

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

0

Eso suena como un filtro para mí. ¿No puedes hacer algo como esto?

 setNames(names.filter(name => !response.data.players.includes(name.label)))

Como referencia, esto es lo que funciona sin React:

 const names = [{ value: "player1", label: "player1" }, { value: "player3", label: "player3" }, { value: "player2", label: "player2" }, { value: "player5", label: "player5" }, ]; const response = { data: { players: ["player1", "player2"], }, }; const filteredNames = names.filter(name => !response.data.players.includes(name.label)) console.log(filteredNames);

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede lograr el resultado de manera eficiente usando Establecer y filtrar

 const names = [ { value: "player1", label: "player1" }, { value: "player3", label: "player3" }, { value: "player2", label: "player2" }, { value: "player5", label: "player5" }, ]; const players = ["player1", "player2"]; const set = new Set(players); const result = names.filter(({ label }) => !set.has(label)); 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