わかりましたこれはいくつかのコードです
function myFunc(){
var myvar = 8;
function myFunc2(num){
alert(myvar+num);
}
myFunc2(2);
}
myFunc();
頭をすっきりさせたいので、間違っていたら訂正してください
私はすでにスタックオーバーフローの記事をたくさん読みましたが、それをよく理解しているか、もっと読むべきか知りたいです。
私の理解では、舞台裏で何が起こっているかとin global execution context there it creates function object with the name
いうと、myFunc` とその [[scope]] プロパティがグローバル変数オブジェクトに割り当てられているということです。
私が呼び出すmyFunc
と、独自の実行コンテキストとアクティベーションオブジェクトが作成され、関数の引数と関数宣言のすべてが行ごとのコード実行の前に初期化されます。
内部関数オブジェクトが作成されると、その内部 [[scope]] プロパティに外部実行コンテキストの変数オブジェクト + グローバル変数オブジェクトの値が割り当てられるため、すべての関数は独自の実行コンテキストを作成しますが、その前にすべての関数の内部 [[scope]] プロパティは最初に割り当てられます。
私はすでにスタックオーバーフローの記事をたくさん読みましたが、それをよく理解しているか、もっと読むべきか知りたいです。