Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Qual relaçao entre o objeto e array?

Minha duvida é;

Como o JS faz a relaçao do objeto com o array se os dois estao declarados separados dentro do escopo global?

achei um pouco confuso poder aplicar um método no array e conseguir trazer o resultado do objeto.

(nao sei se consegui ser claro na minha duvida)

const cliente = {
   nome: 'Heitor',
   idade: 30,
   cpf: 123321213321
}

const chaves = ['nome', 'idade', 'cpf'];

chaves.forEach( info => console.log(cliente[info]))
2 respostas
solução!

Oi, José!

Na verdade, não há uma relação entre objeto e array, acontece que uma das formas de chamar o valor de um objeto é através do uso das chaves. No seu caso, para pegar o nome do cliente, você pode usar cliente.nome ou cliente[nome], ambos resultam no mesmo valor: 'Heitor'. Há casos em que você só conseguirá pegar o valor utilizando as chaves ([]), por isso é importante conhecer os dois modos.

No forEach ali embaixo, o que acontece é que você chama um console.log mostrando o valor de cliente[nome], cliente[idade] e cliente[cpf].

const cliente = {
   nome: 'Heitor',
   idade: 30,
   cpf: 123321213321
}

const chaves = ['nome', 'idade', 'cpf'];

chaves.forEach( info => console.log(cliente[info]))
// forEach irá executar um loop para cada valor dentro do array "chaves", ou seja, vai executar 3 vezes pois tem 3 valores (nome, idade, cpf)
// Na primeira execução, será chamado console.log(cliente[nome]), resultando em "Heitor"
// Na segunda, será chamado console.log(cliente[idade]), resultando em 30
// Na terceira, será chamado console.log(cliente[cpf]), resultando em 123321213321

Obs.: o forEach foi utilizado pois é um método para arrays, existem métodos próprios para manipularmos objetos que você verá ao longo do curso.

Espero ter te ajudado! Abraços e bons estudos.

Ajudou sim! Obrigado Matheus!