对 Javascript 吊装感到困惑

Confused about Javascript Hoisting

function a(){
  function b(){
  }
}

上面javascript的代码中,在吊装阶段,函数b会被吊装吗?或者只是 a 将被提升,因为只有函数 a 在词法上位于全局上下文中。

当函数 (a ) 被调用。

b 不会导出到全局范围。

声明被提升到其包含范围的顶部,对于函数 b 是函数 a

函数 b 将被提升到函数 a 的顶部,但它已经在那里了。

而且,函数 a(根据您的代码)将被提升到全局范围的顶部。

函数 a 将被提升到全局范围的顶部(假设 this 在全局范围内)并且函数 b 将被提升到函数 a 创建的范围的顶部。

在提升过程中,所有声明将向上移动到父函数声明的下方。

Ex: function fun(){
    a = 10;
    var c = b();
    function b(){}
}

会变得像

function fun(){
 var a;
 var c;
 function b(){};
 a = 10;
 c = b();
}