if (1 > 0) {
let estudante = 'Caroline';
console.log(estudante);
}
function hello() {
estudante = 'Ana';
console.log(estudante);
}
hello()
console.log(estudante)
Se acontecesse como descrito na aula (isto é, o Javascript usasse a palavra-chave var
por debaixo dos panos), esse código não deveria funcionar, já que variáveis declaradas com var
não são acessíveis fora de funções.
No caso, o que acontece é que criado uma propriedade em globalThis.
if (1 > 0) {
let estudante = 'Caroline';
console.log(estudante); // Vai imprimir "Caroline"
console.log(globalThis.estudante); // Vai imprimir undefined
}
function hello() {
estudante = 'Ana';
console.log(estudante); // Vai imprimir "Ana"
}
hello()
console.log(globalThis.estudante) // Vai imprimir "Ana"