var a = 2;
(function IIFE(global){
var a =3
console.log(a)//3
console.log(global.a)//2
})(window);
console.log(a);//2
let a = 2;
(function IIFE(global){
var a =3
console.log(a)//3
console.log(global.a)//undefine 为什么变成undefined
})(window);
console.log(a);//2
let const即便在全局环境中定义变量也不会绑定到window对象上
可以找本基础的书看看