[javascript] Execution Context
4603 ワード
実行コンテキスト-実行コンテキスト
実行コンテキストは実行されるコードブロックであり、抽象的な概念である.
実行コンテキストは、実行時に作成されます.
実行コンテキストには,エスケープ後のコードの関数本文とthis
バインディングなどの情報が含まれる.
JavaScriptで実行コンテキストを構成する方法は、実行関数(グローバルスペース)のみです.(ES 6にブロックスキャンの概念が追加されました)
ユーザーが関数を呼び出すと、関数を内部的に実行するために必要な環境情報を含む集合またはオブジェクトです.
実行コンテキストを含む情報
this
情報var a = 1;
function outer() {
console.log(a); // 1: 1
function inner() {
console.log(a); // 2: undefined
var a = 3;
}
inner();
console.log(a); // 3: 1
}
outer();
console.log(a); // 4: 1
このバインド?この情報を含むプロセスと理解できる.コールスタック-コール構造
コルステックとは、関数呼び出しスタックのことです.
これは、現在どの関数が実行されているか、次にどの関数を呼び出すかなどを制御する資料構造です.
プログラムは関数呼び出し(FunctionCall)を追跡するために使用され、各関数呼び出しはスタックで構成されます.
Stack
Stackは、先出し先出のLIFO構造を有する資料構造である.
データを順番に積み上げ、積み上げ順に取り出します.
スタックからデータを入れることをpush,スタックからデータを取り出すことをpopと呼ぶ.pushとpopの位置をtopと呼び,スタックの最下部をbottomと呼ぶ.
開発者ツールのsourcesタブでcall stackを表示できます.
コール構造制御規則
関数スタックに格納された情報
🔎 参考資料🔎
- MDN
- 生活コード
- PoiemaWeb
- javascript info
- コアJavaScript
- JavaScriptの実行
- 内部JavaScript
Reference
この問題について([javascript] Execution Context), 我々は、より多くの情報をここで見つけました https://velog.io/@mook9288/javascript-execution-contextテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol