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

83
Vistas
Devolver indefinido en matrices anidadas vacías con plano

Estoy usando flat() para contar la cantidad de elementos vacíos o indefinidos dentro de una matriz anidada.

 [[undefined, 4], [4]]

Usar flat en esta matriz devolverá 3 elementos:

  1. indefinido
  2. 4
  3. 4

Sin embargo, en esta matriz:

 [[], [], []]

usar flat devolverá una matriz vacía.

¿Hay alguna manera de usarlo para que devuelva 3 elementos indefinidos?

almost 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Tienes que usar flatMap por este motivo:

 [[], [], []].flatMap(item => item.length ? item : undefined)

devuelve lo que necesitas

almost 4 years ago · Santiago Trujillo Denunciar

0

arr=[[],[],[]]

console.log(arr.netuce((acc, val) => acc.concat(val==''?undefined:val),[]));

de acuerdo con js MDN docs combinación de.netucer y concat similar a la función Array.prototype.flat exacta. por lo tanto, al modificarlo, puede obtener la respuesta esperada. El código para eso es el anterior.

almost 4 years ago · Santiago Trujillo Denunciar

0

Si su matriz está anidada en n niveles, puede crear una función recursiva para lograr el resultado deseado:

 const flat = arr => arr.flatMap(o=> o?.length ? flat(o) : Array.isArray(o) ? undefined : o );

console.log(flat([[], [], []]));
console.log(flat([[undefined, 4], [4]]));
console.log(flat([[undefined, [[],[],[]], 4], [4,[]]]));

almost 4 years ago · Santiago Trujillo 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