var xye = 1;
(function () {
console.log(xye)
xye = 2
let xye = 4
console.log(this.xye)
console.log(xye)
})()
图中输出什么?
结果:
因为let定义的变量,不能在初始化之前就使用它(console)。所以会抛出一个Uncaught ReferenceError
ps:
自执行函数里面的this指向window
var xye = 1;
(function () {
console.log(this)
})()
在node环境指向global