(odpowiadam sam sobie. Może tu kiedyś wrócę.)
//jeśli zdefiniowałeś globalną zmienną to lokalnie w funkcji użycie nazwy tej zmiennej (bez window.)
odnosi się do niej ALE jeśli w tej lokalnej funkcji zdefiniowałem lokalną zmienną o tej samej nazwie
to ona PRZYSŁANIA globalną i dostęp do globalnej musze poprzedzić przedrostkiem window..
var global_ten=10;
function foo() {
var global_ten = 42;
bar = function() {
global_ten++;
console.log(window.global_ten);
console.log(global_ten); }
}
foo();
bar(); // 10, 43
-----------------------------
var global_ten=10;
function foo() {
bar = function() {
global_ten++;
console.log(window.global_ten);
console.log(global_ten); }
}
foo();
bar(); // 11, 11