Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

169
Vistas
¿Por qué la matriz de retorno de array.map regresa con el operador OR en mecanografiado?

Soy nuevo en mecanografiar. Ahora estoy tratando de mapear una matriz y devolver el resultado. pero el resultado actualizado regresa con un operador or

aquí cuando paso el cursor sobre la matriz actualizada

 let updatedArray: (false | { age: number; id: number; name: string; username: string; email: string; })[]

Según tengo entendido, debería ser solo una matriz de objetos.

Aquí está la función

 const increseAge = (userId: number): void => { //hover over updatedArray here let updatedArray = egArray.map((user) => user.id === userId && { ...user, age : user.age + 1 }); setEgArray(updatedArray) };
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El operador && funciona evaluando primero la expresión de la izquierda. Si es falso, devuelve ese valor. Si es veraz, evalúe la expresión de la derecha y devuélvala.

 user.id === userId && { ...user, age : user.age + 1 }

En este caso, la expresión de la izquierda devuelve un boolean . Entonces, el expreso de la izquierda evalúa false y se devuelve false , o evalúa true y devuelve su objeto de usuario con el cambio de edad.

Tan false | MyUserType es el tipo que realmente devuelve la función que pasó al map . El resultado sería una matriz de todos los valores false , excepto el que coincidiera con la identificación del usuario, y ese sería el objeto del usuario con el cambio de edad.


Probablemente quieras un ternario en su lugar:

 egArray.map((user) => ( user.id === userId ? { ...user, age : user.age + 1 } // found the user to make older! : user // some other user. ));

De esta forma, cada iteración del bucle devuelve un objeto de usuario válido.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda