预编译过程没有 = 的运算 即变量和函数声明会提升,变量初始化不会提升 预编译,声明部分全部提前就很容易看懂 let obj = { a:'sssss', b:(function(){ console.log(this.obj) return this })() }