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

232
Vistas
¿Cómo usar .map() ? Quiero seleccionar querySelectorAll() + .map() para devolver Array con Index(name)

Necesito crear una matriz variable con índice (nombre) = valor, refiriéndose a html, ejemplo de cómo se vería esta matriz:

 var array = []; array['name'] = 'value'; array['car'] = 'Ferrari'; array['car2'] = 'BMW'; array['color'] = 'Red'; console.log(array);

En mi Html estoy usando la función .map() para obtener los valores pero la matriz que se forma tiene un índice automático, ¿cómo definir el índice de la matriz para que sea igual al campo de nombre?

 <select multiple> <option value="car">Ferrari</option> Array ['car'] = 'Ferrari' ; 

 let list = document.querySelectorAll("option"); let items = Array.from(list).map(elem => elem.text); console.log('items: '+items);
 <select style="width:130px ;" multiple> <option value="car" selected>Ferrari</option> <option value="car2">BMW</option> <option value="color">Red</option> <option value="color2">Black</option> </select>

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

0

Está intentando crear un objeto con propiedades, no una matriz. Si viene de otro idioma, entonces puede ser confuso que JavaScript use una sintaxis similar a una matriz para acceder a las propiedades (llamada notación de paréntesis ).

Puede usar reduce porque está reduciendo varios elementos de una matriz a un solo objeto:

 let list = document.querySelectorAll("option"); let items = Array.from(list).reduce((acc, elem)=> { const value = elem.getAttribute("value"); acc[value] = elem.text; return acc; }, {}); console.log(items);
 <select style="width:130px ;" multiple> <option value="car" selected>Ferrari</option> <option value="car2">BMW</option> <option value="color">Red</option> <option value="color2">Black</option> </select>

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