Escopo - sabrinabm94/javascript GitHub Wiki
Global
É o escopo geral, onde todas as variáveis podem ser lidas em todas as áreas do arquivo javascript em questão.
// escopo global
let name = 'Sabrina';
function notAGlobalScope() {
// escopo específico
let nickname = 'Brina';
let newName = 'Sara';
console.log('notAGlobalScope newName: ' + newName); // Sara
console.log('notAGlobalScope nickname: ' + nickname); // Brina
name = 'Rebeka'; // A variável global pode ser alterada em qualquer parte do código
console.log('notAGlobalScope name: ' + name); // Rebeka
}
console.log('Global name: ' + name); // Sabrina
notAGlobalScope();
console.log('Global name: ' + name); // Rebeka
console.log('Global nickname: ' + nickname); // Not defined
Específico
Se uma variável é definida dentro de uma função, existirá somente dentro desta função, e será undefined nos outros blocos de código do arquivo javascript.