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

272
Visualizações
JavaScript, ¿puedo acceder directamente a una propiedad dentro de una propiedad en el objeto?

En este objeto, quiero imprimir una matriz en forma de [nombre de usuario, habilidades]. Sé que estos objetos no tienen índices. ¿Es posible detectar la propiedad de skills y solo imprimir el valor de eso?

 const users = { Alex: { email: 'alex@alex.com', skills: ['HTML', 'CSS', 'JavaScript'], age: 20, isLoggedIn: false, points: 30 }, Asab: { email: 'asab@asab.com', skills: ['HTML', 'CSS', 'JavaScript', 'Redux', 'MongoDB', 'Express', 'React', 'Node'], age: 25, isLoggedIn: false, points: 50 }, Brook: { email: 'daniel@daniel.com', skills: ['HTML', 'CSS', 'JavaScript', 'React', 'Redux'], age: 30, isLoggedIn: true, points: 50 } }

Primero probé el código a continuación, pero hubo un error de que no puede leer las propiedades de undefined (lectura 0).

 let userId = Object.keys(users); //(3) ['Alex', 'Asab', 'Brook'] for (let i = 0; i < userId.length; i++) { let userSkills = users.userId[i].skills; console.log(userId, userSkills); }

¿Es la única forma en que verifico todas las habilidades una por una como se muestra a continuación?

 console.log(users.Alex.skills); console.log(users.Asab.skills); console.log(users.Brooks.skills);
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Ya casi estás ahí -

 for (let i = 0; i < userId.length; i++) { let userSkills = users[userId[i]].skills; console.log(userId[i], userSkills); }

Utilice la notación de corchetes en lugar de la notación de puntos. Porque todo el tiempo la notación de puntos no es aceptable. Me gusta: .number, .dependingValue, .anyCalculation, numericValue.something

Javascript mezcla decimal.

Lea más: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_accessors

about 4 years ago · Juan Pablo Isaza Relatório

0

let userId = Object.keys(users); //(3) ['Alex', 'Asab', 'Brook'] userId.forEach(u=> { console.log(users[u].skills); });
about 4 years ago · Juan Pablo Isaza Relatório

0

Como se dijo en los comentarios, debe usar la notación de corchetes.

Enlaces:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_accessors

https://javascript.info/objeto

Además, puede usar esto para acortar su código:

 userId.forEach(user => console.log(users[user].skills));

Acerca de los métodos de matriz que puede leer aquí:

https://javascript.info/array-methods

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