1
resposta

Uso de let em variáveis de mesmo nome, mas de diferentes escopos

Gostaria de saber se a variável estudante é a mesma ou se são diferentes variáveis com o mesmo nome no seguinte exemplo:

    let estudante = 'Pedro';
    
    if (true) {
        let estudante = 'João';
    }
    
    if (true) {
        let estudante = 'Marcos';
    }

estamos declarando a mesma variável, como isso pode funcionar? Seria por causa da questão de escopo?

1 resposta

As variaveis são diferentes, pois tem escopo destintos, um está fora, e outra de em um bloco, e outra em outro bloco, estudante = 'Pedro', está em escopo Global, ja a let estudante = 'João', está em um bloco if, e let estudante = 'Marcos', está em outro bloco if.