janela é realmente global em Javascrip
Pegue esta parte do Javascript em um navegador:
<script>
console.log(window.someThing);
var x = 12;
function foo() {
window.otherThing = x;
}
</script>
Dentrofoo
podemos acessarwindow
, todos nós sabemos disso, mas por que exatamente?
script
tag) tem isso como uma variável local implícita e é simplesmente "herdada pelo fechamento" como qualquer outra variável local (comox
acima) pode ser? E como isso coincide com variáveis declaradas diretamente dentro doscript
sendo definida como propriedades dewindow
? (Ou não é assim?)
<script>
var x = 12;
function() {
console.log(window.x);
}
</script>