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

125
Vistas
Cómo iterar a través de dos matrices y devolver valores clave a diferentes objetos
const phoneBook = {}; const names = ['Mira', 'Royce', 'Kathie']; const numbers = ['3234958675', '9164059384', '4154958675'] function populate(names, numbers) { for(i = 0; i < populate.length; i++) { phoneBook[names[i]] = numbers[i]; } }

¿Cómo puedo hacer que mi ciclo for itere a través de ambas matrices simultáneamente y devuelva nombres como clave y números como valores?

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

0

Mayormente tienes la idea correcta.

Dos sugerencias:

  1. desea usar numbers.length o names.length como el número de iteraciones
  2. probablemente no quieras mutar un objeto global

Un ejemplo de trabajo sería algo como esto:

 const names = ['Mira', 'Royce', 'Kathie']; const numbers = ['3234958675', '9164059384', '4154958675']; function populate(names, numbers) { const phoneBook = {}; for(i = 0; i < names.length; i++) { phoneBook[names[i]] = numbers[i]; } return phoneBook; } const phoneBook = populate(names, numbers);
about 4 years ago · Juan Pablo Isaza Denunciar

0

De manera más concisa, comprima las matrices juntas, luego pásela a Object.fromEntries(0

 function makePhoneBook(names, numbers) { const entries = names.map((name, i) => [name, numbers[i]]); return Object.fromEntries(entries); } const names = ['Mira', 'Royce', 'Kathie']; const numbers = ['3234958675', '9164059384', '4154958675'] const phoneBook = makePhoneBook(names, numbers); console.log(phoneBook);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Solo por la nota, lodash si no te importa:

 const names = ['Mira', 'Royce', 'Kathie']; const numbers = ['3234958675', '9164059384', '4154958675']; const phoneBook = _.zipObject(names, numbers); console.log(phoneBook);
 .as-console-wrapper { max-height: 100% !important; top: 0; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js" integrity="sha512-WFN04846sdKMIP5LKNphMaWzU7YpMyCU245etK3g/2ARYbPK9Ub18eG+ljU96qKRCWh+quCY7yefSmlkQw1ANQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>

Y, por supuesto, de una sola línea:

 const names = ['Mira', 'Royce', 'Kathie']; const numbers = ['3234958675', '9164059384', '4154958675']; const phoneBook = names.reduce((acc, name, i) => (acc[name] = numbers[i], acc), {}); console.log(phoneBook);
 .as-console-wrapper { max-height: 100% !important; top: 0; }

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