Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

108
Visualizações
¿Cómo puedo crear una asignación de objetos a partir de una matriz de cadenas?

Estoy tropezando con algo que debería ser fácil, pero parece que no puedo hacerlo.

Tengo una matriz de cadenas y quiero mapearlas para crear un objeto como este:

 const monthesList = ['january', 'february', 'march', 'april', 'may'] const myState = monthesList.map(month => ( month: {selected: false, year: 2022} ) )

lo que quiero es obtener el siguiente objeto:

 myState ={ january:{ selected: false, year: 2022 }, february:{ selected: false, year: 2022 }, march:{ selected: false, year: 2022 }, april:{ selected: false, year: 2022 }, may:{ selected: false, year: 2022 }, }

Editar: acabo de encontrar el camino:

 const myState = monthesList.map(month => ( {[month] : { selected: false, year: 2022 }} ) )

solo necesito hacer un objeto con él, no debería ser demasiado difícil

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

El método .map() devuelve una matriz, pero el resultado que busca es un objeto. Necesita algo que pueda convertir una matriz de pares clave-valor (es decir: [key, value] ) en un objeto. Para esto, tenemos el método Object.fromEntries() que toma una matriz de pares clave-valor y, a partir de ella, construye un objeto como este:

 const monthesList = ['january', 'february', 'march', 'april', 'may']; const myState = Object.fromEntries(monthesList.map(month => [ month, {selected: false, year: 2022} ])); console.log(myState);

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar map para generar una matriz de matrices con los valores en cada matriz interna como el nombre del mes y el objeto; luego use Object.fromEntries para convertir eso en su objeto deseado:

 const monthesList = ['january', 'february', 'march', 'april', 'may'] const myState = Object.fromEntries( monthesList.map(m => [m, {selected: false, year: 2022}]) ) console.log(myState)

about 4 years ago · Juan Pablo Isaza Relatório

0

map solo devolverá una matriz. Su salida esperada es un objeto. No hay necesidad de complicar demasiado las cosas; en su lugar, use un bucle simple .

 const list = ['january', 'february', 'march', 'april', 'may']; const myState = {}; for (const month of list) { myState[month] = { selected: false, year: 2022 }; } console.log(myState);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda