1
resposta

utilização do operador de espalhamento

conforme os videos do 3 modulo foi passado um desafio para percorrer um array com o operador de espalhamento utilizando o for, consegui fazer desta maneira, porém ele mostra em listas separadas, como faço para juntar todos os resultados em 1 só lista?

var cidadao=[

{nome:'fernando jacckson',
dependentes:[{
    nome:'ricardo',
    idade:43

}]},

{nome:'rita',idade:9,sexo:'m',parentesco:'filho',
dependentes:[{
    nome:'tereza',
    idade:99
}]},

{nome:'francisca',idade:16,sexo:'F', parentesco:'vizinha',
dependentes:[{
    nome:'neide',
    idade:33
}]

}

]

for(let valores in cidadao){

const dependentes=[...cidadao[valores].dependentes]
console.table(dependentes)

}

1 resposta

Eu também tentei fazer esse desafio. Minha solução foi essa, até deu certo, mas não entendi por que o console imprime "undefined" na última linha. Se alguém puder dar um help sobre o que eu errei, agradeço.

const clientes = [
    {
        nome: "Andre",
        cpf: "123123123",
        dependentes: [
        {
            nome: "Sara",
            parentesco: "filha",
            dataNasc: "20/03/2011"
        },
        {
            nome: "Samia",
            parentesco: "filha",
            dataNasc: "04/01/2014"
        }],
    },
    {
        nome: "Juliana",
        cpf: "567567567",
        dependentes: [{
            nome: "Sophia",
            parentesco: "filha",
            dataNasc: "30/08/2020"
        }]
    }
];

//spread operator -> nao funcionou muito bem
let listaDependentes;

clientes.forEach(cliente => {

    listaDependentes += [...cliente.dependentes];
});

console.log(listaDependentes);

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software