EC
↔ Environ to run JS, to contain VEST (Variable Environment, Scope Chain & this keyword), to fill task pipline in Call Stack
aka EC, Execution-Context
VEST
Variable Environment, Scope Chain & this keyword
VE
container for FAV (Function Declarations, Args Object & Variables )
Scope Chain
Link to Variable from outer Scopes to current Scope
_this_ keyword
Special variable which 👉to "owner" of calling function
Necessary info includes local Variables, Arguments
Global EC
EC created for Global Scope or Top-Level Code
Function EC
EC for Function Scope code
Runtime
final lifecyle stage when Program is run inside EC
Compile Time
Program lifecycle phase to Compile Source Code
ECs are stacked on top each other in Call Stack to keep track of order of execution
EC at top of stack is currently active running, and will then be popped off stack once finished
Execution Thread
Part of EC currently run in CPU Thread
Main Thread
Execution Thread for main App process inside CPU
References
Call Stack
↔ where code executed via EC, to track execution orderArgs Object
↔ Object to contain all args pass into function (for current EC)Execution Thread
↔ Part of EC currently run in CPU ThreadGlobal EC
↔ EC created for Global Scope or Top-Level CodeFunction EC
↔ EC for Function Scope codeClosure
↔ Internal Property of function to preserve access to VE of EC at its creationRuntime
↔ final lifecyle stage when Program is run inside ECMicrotask
↔ Callback to defer fn after parent EC popped off Call Stack