1
resposta

obj sem ligação a const

Olá, tudo bem? Gostaria de saber um pouco mais como funciona a nomeação dentro da function. Eu percebi que foi nomeado o objeto na function com obj, sendo assim, ele foi chamado no Object.keys de obj, mas como que um objeto sem ligação a const cliente, consegue informações de dentro dela?

const cliente = {
    nome: "André Silva",
    idade: 36,
    cpf: "1234567891",
    email: "andre@gmail.com",
    fones: ["55984193373, 5548984600073"],
    dependentes: [
        {
            nome: "Sarah Silva",
            Parentesco: "Filha",
            dataNasc:"20/03/2009" },
        {
            nome: "Samia Maria Silva",
            Parentesco: "Filha",
            dataNasc: "15/11/2014"       
        }
    ],
    saldo: 100,

    depositar:function(valor){
        this.saldo += valor
    }
}

function oferecerSeguro(obj){
    const propsClientes = Object.keys(obj);
    if (propsClientes.includes("dependentes")){
        console.log(`Oferta de seguro de vida para ${obj.nome}`)
    }
}

oferecerSeguro(cliente)
1 resposta

Voce tem a const cliente com uma serie de informacoes dentro dela, quando chama o oferecerSeguro(cliente) e o mesmo que dizer ao codigo, "Rode a funcao oferecerSeguro(e use as informacoes que estao em cliente)" e dai que ele tira as infos. Na funcao function oferecerSeguro(obj) e o mesmo que o codigo dizer "dentro da rotina, tudo que recebermos quando formos chamados, vamos chamar de obj" entao ele recebeu "Clientes" mas dentro da funcao eles chamam de "Obj"