我正在从嵌套函数的外部范围更新变量,
因为这是在初始化函数期间发生的,外部范围不是最外部(窗口)范围;
var init = function() {
var x = 'old stuff' ;
function butClick() {
x = 'new stuff' ;
}
console.log(x); // new stuff
document.querySelector("btn").addEventListener("click", butClick, false);
}
window.addEventListener( 'DOMContentLoaded', init, false);
为了将它保存在 init-function 范围内,我省略了var关键字,并且正如预期的那样,变量的新值会冒泡并更新;
但结果 console.log('x' in window )
是假的,
不是冒泡应该到达窗口范围吗?