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

162
Visualizações
La casilla de verificación no está seleccionada después de la comparación con una matriz

Tengo una matriz que contiene un objeto. Me gustaría tener una casilla de verificación marcada cuando el objeto aparece en la matriz. Pero mi casilla de verificación no está marcada, vea la imagen. Solo el nombre se muestra como un chip en el campo de selección. No se por que

ingrese la descripción de la imagen aquí

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

0

La función js includes está comparando elementos con el operador === y esto no funciona con objetos.

por ejemplo, la siguiente expresión devolverá false :

 {id:1} === {id:1}

Para resolver su problema, puede usar la función js que verifica si un elemento de la matriz coincide con la condición

Para comparar su objeto, puede escribir su lógica en alguna función o escribir otra función para comparar sus elementos.

Nota : en mi opinión, en su caso, solo puede comparar el identificador de los objetos para verificar si están incluidos en la matriz personNamen

 checked={personNamen.some(person => person.name === name.name)}

Pequeño ejemplo

 const personNamen = [{ name: "Foo", id: 1 }] const name = { name: "Foo", id: 1 } const name2 = { name: "Bar", id: 2 } const compareObjects = (obj1, obj2) => { return obj1.name === obj2.name && obj1.id === obj2.id } console.log(personNamen.some(person => compareObjects(person, name))) //true console.log(personNamen.some(person => compareObjects(person, name2))) //false


Solución alterna

Otra solución sería asignar la matriz al valor del identificador y verificar si la identificación está incluida en la matriz asignada

Ejemplo :

 const personNamen = [ {id: 1, name: "Foo"}, {id: 2, name: "Bar"}, ] const reduceArray = personNamen.map(x => x.id) const name1 = {id:1, name: "Foo"} const name2 = {id:3, name: "Baz"} console.log(reduceArray.includes(name1.id)) //true console.log(reduceArray.includes(name2.id)) //false

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