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

251
Visualizações
¿Cómo crear un objeto Javascript a partir de una matriz de claves conocidas, pero con los valores inicializados en nulo?

Tengo un objeto JS del que extraeré una matriz de claves (usando Object.keys() ) y luego quiero usar esas mismas claves para crear un objeto diferente, pero esta vez con sus valores inicializados en null .

En Python, haría algo como:

 list_of_keys = ["key_1", "key_2"] # The * unpacks the list, could be thought as a JS spread operator new_dict = dict.fromkeys(*list_of_keys)

Y recuperaría un nuevo diccionario con todos sus valores inicializados en None de forma predeterminada.

Sin embargo, parece que no encuentro una propiedad o método similar en Javascript.

EDITAR: si usa ESLint, la respuesta de @CerebralFart (el for... of... ) podría desencadenar una queja del linter. Se puede abordar aquí.

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

0

Puedes usar el método reduce para hacerlo:

 const object = { key_1: 'value_1', key_2: 'value_2', key_3: 'value_3' }; const new_object = Object.keys(object).reduce((accumulator, currentValue)=> { accumulator[currentValue] = null; return accumulator; }, {}); console.log(new_object)

about 4 years ago · Juan Pablo Isaza Relatório

0

No hay necesidad de hacer esto más complicado que un simple bucle for:

 const object = { key_1: 'value_1', key_2: 'value_2', key_3: 'value_3' }; const newObject = {}; for (const key in object) { newObject[key] = null } console.log(newObject);

O, si solo tienes las llaves

 const keys = ['key_1', 'key_2', 'key_3']; const newObject = {}; for (const key of keys) { newObject[key] = null } console.log(newObject);

ETA: También podría usar Object.fromEntries con algún mapeo. Dependiendo de lo que quiera hacer con el objeto, esto puede ser marginalmente más rápido.

 const object = { key_1: 'value_1', key_2: 'value_2', key_3: 'value_3' }; const newObject = Object.fromEntries(Object.keys(object).map(key => [key, null])); console.log(newObject);

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