function foo () {
console.log(this.age);
}
const age = 18
foo.apply(window) // undefined
为何 用 const/let
定义一个全局变量 age, 并赋值为 18, 用 foo.apply(window)
或 foo.call(window)
或 window.foo()
输出值都是 undefined
, 而不是 18
呢? 而用 var age = 18
, 结果却为 18
?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…