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

143
Vistas
Cómo obtener elementos de matriz en conjuntos de 2, sin un bucle for tradicional

Tengo una matriz con 1000 direcciones falsas aleatorias. Pero cada dirección se divide en 2 matrices diferentes. por ejemplo:

[['123 main street'], ['San Diego, CA, 92101'],['22 washington ave'],['Miami, FL, 56624']]

Mi objetivo es mutar la matriz actual o simplemente crear una nueva matriz con lo siguiente:

[['123 main street, San Diego, CA, 92101'],['22 washington ave, Miami, FL, 56624']]

Quiero hacer esto sin usar el tradicional- for(let i = 1....).

Actualmente tengo lo siguiente:

 const addressesFinal = addressesBad .map(function (cur, i, arr) { return [arr[i], arr[i + 1]]; }) .filter((e, i) => i % 2 === 0);

¿Hay una manera más fácil y limpia de hacer esto? Me gustaría usar un método de matriz moderno además de un bucle for y push.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Es un buen caso para reducir. En índices pares, inserte la matriz desde la entrada. En índices impares, agregue el elemento a la última matriz...

 const array = [['123 main street'], ['San Diego, CA, 92101'],['22 washington ave'],['Miami, FL, 56624']] const addresses = array.reduce((acc, el, index) => { return index % 2 ? acc[acc.length-1].push(el[0]) : acc.push(el), acc; }, []); console.log(addresses)

about 4 years ago · Santiago Trujillo Denunciar

0

Aquí tienes (Todos los comentarios descriptivos agregados en el fragmento de código a continuación) :

 // Input array const arr = [['123 main street'], ['San Diego, CA, 92101'],['22 washington ave'],['Miami, FL, 56624']]; // Declare a variable to push the final result. const res = []; // iterating an array to do the manipulation in data. arr.forEach((item, index) => { // concat the array items (index with (index + 1)) arr[item] = item.concat(arr[index + 1]) // Splicing the alternate index element. arr.splice(index + 1, 1); // join the array elements. arr[item] = [arr[item].join()]; // pushing the final items in the res array. res.push(arr[item]); }); // output console.log(res);

about 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