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

112
Vistas
La función JavaScript Array Map no funciona como se esperaba

Tengo un problema con la función Array.map que no funciona como esperaba. He simplificado mi ejemplo a continuación, solo quiero comprender dónde me estoy equivocando.

Así que tengo el siguiente código a continuación:

 console.log(this.reportTestData) let data = this.reportTestData.map((row) => { return [ 1 , 2, 3] }); console.log(data) return data

Desde el primer archivo console.log, this.reportTestData es una matriz que contiene 92 objetos, el contenido de cada objeto es irrelevante:

ingrese la descripción de la imagen aquí

Entonces, a partir del código, esperaría que la función de mapa se ejecute sobre la matriz 92 veces y devuelva una nueva matriz ([1,2,3]) para cada elemento. Dejándome con una matriz de 92 elementos, cada uno de los cuales es una matriz [1,2,3]. Sin embargo, eso no es lo que obtengo.

ingrese la descripción de la imagen aquí

En cambio, obtengo una matriz de 92 elementos, pero cada elemento está completamente vacío.

También traté de devolver objetos de la función de mapa en su lugar:

 console.log(this.reportTestData) let data = this.reportTestData.map((col) => { return { test : 1 } }); console.log(data) return data

Sin embargo, sigo recibiendo objetos vacíos devueltos sin propiedades:

ingrese la descripción de la imagen aquí

Cualquier ayuda que se pueda ofrecer sería muy apreciada, ya que no puedo ver dónde estoy cometiendo un error.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Funciona para mi

 const reportTestData = new Array(12).fill(0); let data1 = reportTestData.map((row) => { return [ 1 , 2, 3] }); console.log(data1) let data2 = reportTestData.map((row) => { return { test : 1 } }); console.log(data2)

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza Denunciar

0

Probé con 10 elementos en una matriz, y como puede ver, hay 10 piezas de [1,2,3] ... por lo que la función de mapa funciona bien, como puedo decir.

 let reportTestData = [1,2,3,4,5,6,7,8,9,10] console.log(reportTestData) let data = reportTestData.map((item) => [ 1 , 2, 3]); console.log(data)

Ahora intente nuevamente con 10 objetos en una matriz:

 let reportTestData = [{},{},{},{},{},{},{},{},{},{}] console.log(reportTestData) let data = reportTestData.map((item) => [ 1 , 2, 3]); console.log(data)

Nuevamente, la función de map de Arrays funciona bien, por lo que debe verificar qué está haciendo mal en su código.

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