1
resposta

Curso JS capitulo 5 ==

Pessoal, bom dia eu tenho a seguinte dúvida. tenho dois arquivos js um chamado calcula-imc.js e outro com o nome de form.js.

Nestes dois arquivos eu tenho uma var paciente, conforme abaixo que recebe um array:


//calcula-imc.js
var pacientes = document.querySelectorAll('.paciente');

for(var i = 0; i < pacientes.length; i++){
    var paciente = pacientes[i];
    var tdPeso = paciente.querySelector(".info-peso");
    var tdAltura = paciente.querySelector(".info-altura");
    var tdImc = paciente.querySelector('.info-imc');
};

E no outro arquivo tenho a declaração de um objeto.

//form.js
function obtemPacienteDoFormulario(form){
        var paciente = {
            nome: form.nome.value,
            peso: form.peso.value,
            altura: form.altura.value,
            gordura: form.gordura.value,
            imc: calculaImc(form.peso.value, form.altura.value)
        }
        return paciente;
    }

Minha pergunta é, como o JS não confunde as variaveis ? porque o tipo delas é diferente e valores também.

1 resposta

Pois elas estão em escopos diferentes. Logo, você pode usar os mesmos nomes (não é indicado) em diferentes escopos na sua aplicação. Exemplo:

var teste = 'ola'

function testando(){
 var teste = 'ola, tudo bem?'
 console.log(teste)
}

console.log(teste)//ola

testando()//ola, tudo bem?

Espero que eu tenha ajudado.