2016-10-23 6 views

答えて

3

function定義は、その範囲の一番上に掲揚されているので、これはですので、bar()内部のfooの割り当ては、実際には、空のボディを持つローカル関数を参照しています。

これについてさらに読むことができますhere

3

barの上bar移動内部foo関数宣言をコンパイルしながらためです。このように

var foo = 1; 
function bar() { 
    function foo() {} 
    foo = 10; 
    return; 
} 

bar(); 
alert(foo); 

hoisting in JSについて読んでください。 「VAR巻き上げ」セクションで そしてhere

関連する問題